如何使用 JavaScript 和/或服务器端标签获取绑定控件的客户端 ID?
<asp:DataGrid>
<ItemTemplate>
1)
<asp:TextBox ID="tbComments" onChange="javascript:checkLength(<%# tbComments.ClientId %>);" runat="server"/>
2)
<span id="<%# tbComments.ClientId %>Label"></span>
</ItemTemplate>
</asp:DataGrid>
有什么想法可以使上述工作正常进行吗(这不是:P)?
<asp:DataGrid>
<ItemTemplate>
1)
<asp:TextBox ID="tbComments" onChange="javascript:checkLength(<%# tbComments.ClientId %>);" runat="server"/>
2)
<span id="<%# tbComments.ClientId %>Label"></span>
</ItemTemplate>
</asp:DataGrid>
Any ideas to make the above working (which doesn't :P)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
您确定问题不仅仅是以下标签中“ClientId”的拼写错误吗? :-)
Are you sure the problem isn't just the mispelling of "ClientId" in the following tag? :-)
您的 JavaScript checkLength() 函数没有将 Label 附加到客户端 ID 是否有问题? 那么你的 Javascript 是否同时采用两者?:
Is there something wrong with your JavaScript checkLength() function not appending Label to the Client ID? Then have your Javascript take both?:
更改您的标记以将“this”作为给定评论框的引用传递。
然后在 checkLength() 函数中,“e”是对引发 onchange 事件的 DOM 元素的直接引用。
Change your markup to pass "this" as a reference to the given comments box.
Then in your checkLength() function, "e" is a direct reference to the DOM element that raised the onchange event.
只需向 span 或文本框添加一个类,然后使用 jQuery 在 dom 中查找元素,然后向文本框添加更改事件,运行 checkLength 代码
Just add a class to the span or the textbox and use jQuery to find the element in the dom and add a change event to the textbox run the checkLength code