【问题标题】:Properly referencing controls in ASP.NET user controls in JavaScript在 JavaScript 中正确引用 ASP.NET 用户控件中的控件
【发布时间】:2008-12-21 19:54:57
【问题描述】:
我有一个 ASP.NET 用户控件,其中包含一个文本框控件和一个按钮控件。此用户控件将多次添加到我的网页中。我需要有一段 JavaScript 可以在文本框更改时运行,如果文本框的值无效则禁用该按钮。我的问题是:如何将 JavaScript 放在只能引用同一用户控件中的按钮的文本框中?请记住,有许多 ASP.NET 用户控件,每个控件都有一个按钮和一个文本框,我只希望文本框中的无效值影响一个关联的按钮。谢谢!
【问题讨论】:
标签:
asp.net
javascript
user-controls
【解决方案1】:
您可以使用控件的 ClientId 属性(它在客户端唯一标识控件)并进行类似操作:
<asp:TextBox runat="server" ID="myTextBox" />
<asp:Button runat="server" ID="myButton" Text="click" />
<script language="javascript" type="text/javascript">
document.getElementById("<%=myTextBox.ClientID %>").onclick = function() {
document.getElementById("<%=myButton.ClientID %>").disabled = "disabled";
}
</script>
另请参阅此文档:
Client Script in ASP.NET Web Pages,在客户端脚本中引用服务器控件
部分