如何在Javascript中引用ASP.NET控件?
我正在开发我的第一个ASP.NET应用程序。我创建了一些文本框和按钮,并在文本框中添加了客户端验证。我现在希望根据文本框的内容和有效性设置和清除按钮的enabled属性 我已经研究了这些问题和答案,而且,我能处理的最好的事情是如何在Javascript中引用ASP.NET控件?,javascript,asp.net,Javascript,Asp.net,我正在开发我的第一个ASP.NET应用程序。我创建了一些文本框和按钮,并在文本框中添加了客户端验证。我现在希望根据文本框的内容和有效性设置和清除按钮的enabled属性 我已经研究了这些问题和答案,而且,我能处理的最好的事情是 <script language="javascript" type="text/javascript"> function SetButtonSensitivity() { var label = document.getEl
<script language="javascript" type="text/javascript">
function SetButtonSensitivity()
{
var label = document.getElementById("<%= lblResult3.ClientID %>");
var button = document.getElementById("<%= btnDone.ClientID %>");
if (Page_ClientValidate())
{
label.Text = "valid";
button.disabled = false;
}
else
{
label.Text = "not valid";
button.disabled = true;
}
}
</script>
函数SetButtonSensitivity()
{
var label=document.getElementById(“”);
var按钮=document.getElementById(“”);
如果(第\u页ClientValidate())
{
label.Text=“有效”;
button.disabled=false;
}
其他的
{
label.Text=“无效”;
button.disabled=true;
}
}
我可以告诉您,当我从文本框字段中移除选项卡时,会调用此脚本,因为客户端验证会发出错误消息,但脚本对按钮或标签没有影响
有人能看到我忽略了什么吗?试试
value
属性而不是Text
label.value = "valid";
button.disabled = false;
嗯,因为您的
标签
实际上呈现为
label.innerText=“valid”
您无法从javascript访问标签的文本属性。
标签被渲染为一个标签。您应该尝试设置innerHTML属性:
label.innerHTML = "not valid";
还可以使用javascript控制台查看js代码中有哪些错误。(firefox中的Ctrl+Shift+J)您可以使用
label.innerHTML、label.innerText或label.value以获取或设置标签的文本
“button.disabled=false/true”应该有效