[英]Why we can not directly pass the asp.net controls id as javascript function argument?
<asp:Button ID="ButtonId" runat="server" Text="Button" OnClientClick="check(document.getElementById('<%=TextBox1.ClientID%>'))"/>
为什么我们不能使用上面的代码将TextBox1 ID传递给javascript函数?
ButtonId.OnClientClick = string.Format("check('{0}')", TextBox1.ClientID);
Page_Load中上述代码的用途是什么?
ClientId
是呈现到浏览器中的控件的ID,它可能与控件的ID(即服务器端ID)相同或不同。 这就是为什么最佳实践是使用控件的ClientId
属性或某种JavaScript方法来获取它的原因(通常是相对于您需要的位置,例如,使用this
或this.parent
或getElementById
等)。
当控件嵌套在另一个容器中时, ClientId
将不同于ID
属性。 在这种情况下,父控件的ID前面带有控件ID,以构成ClientId
属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.