我在用asp.net/C#
对于我的项目。目前我有一个default.aspx
页面和母版页。default.aspx
页面有很多控件,并且对于每个控件我都定义了class
and id
。我面临的问题是当我申请时style
使用特定的控件class
,样式被正确反映,当我使用控件的 id 执行此操作时,样式不会反映。
我纠正了这个问题,但我不知道如何解决。
例如,
我有一个textbox
with id="txtCustNo"
,当我应用这样的风格时
#txtCustNo{border:1px solid red}
当我应用类似风格时,它没有反映出来#ctl00_ContentPlaceHolder1_txtCustNo
它显示了更改,但是 id 是txtCustNo
..有人可以指出我哪里出错了。谢谢。
服务器控件上的ID是自动生成的,与客户端生成的ID不同。
您可以使用以下命令找到生成的 ID:
ASP.NET 4 在 Control 基类上支持新的 ClientIDMode 属性。 ClientIDMode 属性指示控件在呈现时应如何生成客户端 ID 值。 ClientIDMode 属性支持四个可能的值:
- AutoID - 按照 .NET 3.5 中的方式呈现输出(自动生成的 ID 仍将呈现 ctrl00 等前缀以实现兼容性)
- 可预测(默认)— 修剪任何“ctl00”ID 字符串以及列表/容器控件是否连接子 ID(例如:id=”ParentControl_ChildControl”)
- 静态 - 将完整的 ID 命名控制权移交给开发人员 - 他们设置为控件 ID 的内容即为所呈现的内容(例如:id=”JustMyId”)
- 继承—告诉控件遵循父容器控件的命名行为模式
在 4.0 之前使用 ASP.Net 时,您必须接受自动生成的 ID。
有关 4.0 功能的更多信息,请参阅此链接。
http://weblogs.asp.net/scottgu/archive/2010/03/30/cleaner-html-markup-with-asp-net-4-web-forms-client-ids-vs-2010-and-net- 4-0-系列.aspx
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)