客户端ID模式在2个相同的id上

时间:2013-11-18 17:24:31

标签: asp.net

我有一个control1.ascx页面 和control2.ascx页面 他们都有这个元素:

<asp:TextBox runat="server" ID="txt_name" ClientIDMode="Static"></asp:TextBox>

page.aspx包含两个控件。

所以现在页面包含id为“txt_name”X2的输入类型文本。

我想知道它是如何工作的?有人可以解释一下吗?

3 个答案:

答案 0 :(得分:1)

理想情况下,只有在确定页面中没有其他控件具有相同名称时才要使用ClientIDMode="Static"

例如,你真的想从外部javascript文件访问ServerControl(虽然这不是一个好的设计)。

如果您不确定,请使用Predictable

答案 1 :(得分:0)

当您使用ClientIDMode="Static"时,控件的ID将完全按照原样呈现。

ID将直接呈现。请参阅MSDN docs,此Blog是一本很好的阅读材料。

答案 2 :(得分:0)

ASP.Net 4 + 支持各种模式来为控件生成ClientID。

以下是关于ClientID及其“生成模式”的MSDN的参考:http://msdn.microsoft.com/en-us/library/system.web.ui.control.clientid(v=vs.100).aspx

要了解ClientID生成的工作原理,您可以参考以下链接:

http://www.codeproject.com/Articles/108887/Client-Ids-Generation-with-ASP-NET-4-0

(它有关于ClientID生成在不同情况下如何工作的直观解释)

希望这有帮助。