在asp.net中,如果使用自定义属性,通常它会按原样呈现。Asp.net复选框和html数据属性
考虑到这个标记(注:属性,如id
,name
和for
在所有的例子作为自己生成的ID被拆除/名称详细):
<asp:TextBox runat="server" data-foo="bar" />
呈现在asp.net为:
<input type="text" data-foo="bar" />
也就是说,asp.net保持data-foo
不变。
复选框通常呈现:
<asp:CheckBox runat="server" Text="Normal" />
呈现为:
<asp:CheckBox runat="server" Text="Custom attribute" data-foo="bar" />
它呈现为:
<input type="checkbox" />
<label>Normal</label>
但是,如果你在一个复选框添加自定义属性:
<span data-foo="bar">
<input type="checkbox" />
<label>Custom attribute</label>
</span>
正如您所看到的,呈现的跨度用于保存属性。如果您在后面的代码中添加属性,也会发生这种情况。这与任何其他HtmlControl,AFAIK都不会发生。
有谁知道为什么这个范围被渲染来保存属性?
无论如何要呈现输入标签中的属性?
有趣..只是好奇,你有什么用额外的属性为\ –