我如何在Javascript中引用ASP.NET控件?

时间:2011-07-26 13:20:51

标签: javascript asp.net

我正在开发My First ASP.NET Application。我创建了一些文本框和按钮,并在文本框中添加了客户端验证。我现在希望根据文本框的内容和有效性设置和清除按钮的启用属性。

我已经研究了问题和答案herehereherehere,我能够管理的最好的就是这个...

<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>

我可以告诉我在远离文本框字段时调用此脚本,因为客户端验证会发出错误消息,但脚本对按钮或标签没有影响。

任何人都可以看到我忽略了什么吗?

4 个答案:

答案 0 :(得分:3)

您无法从javascript访问标签的Text属性。 标签呈现为。您应该尝试设置innerHTML属性:

label.innerHTML = "not valid";

还可以使用javascript控制台查看js代码中的错误。 (在Firefox中按Ctrl + Shift + J)

答案 1 :(得分:0)

尝试value属性而不是Text

label.value = "valid";
button.disabled = false;

答案 2 :(得分:0)

好吧,因为您的Label实际上是<span>呈现的 label.innerText = "valid"

答案 3 :(得分:0)

您可以使用

label.innerHTML,label.innerText或label.value来获取或设置标签的文本。

“button.disabled = false / true”应该有效。