ASP.NET 母版页内容页面的元素似乎都被 ASP.NET 页面呈现器更改或添加了 ID。
这会破坏所有基于原始元素 ID 的 CSS 样式。
这是认真的吗?如果是这样,有没有办法解决它?
ASP.NET 母版页内容页面的元素似乎都被 ASP.NET 页面呈现器更改或添加了 ID。
这会破坏所有基于原始元素 ID 的 CSS 样式。
这是认真的吗?如果是这样,有没有办法解决它?
是的,您可以指定将其ClientIDMode
设置为静态。
例子:
客户端
<asp:TextBox ID="TextBox1" runat="server" ClientIDMode="Static"></asp:TextBox>
代码背后
TextBox txtBox = new TextBox();
txtBox.ID = "TextBox1";
txtBox.ClientIDMode = ClientIDMode.Static
通过将其设置为静态...
ClientID 值设置为 ID 属性的值。如果控件是命名容器,则该控件用作它所包含的任何控件的命名容器层次结构的顶部。
更新 感谢@Chris Lively提供更多信息
页面级别
<%@ Page Language="C#" ClientIDMode="Static" AutoEventWireup="true"...
应用层
<system.web>
<pages clientIDMode="Static"></pages>
</system.web>
参考资料:
我认为您需要使用该ClientID
属性而不是该ID
属性。
文档:http: //msdn.microsoft.com/en-us/library/system.web.ui.control.clientid.aspx