我试图设计我的无线电按钮。
但是当我使用firbug编译和修改代码时会发生一些奇怪的事情。
mycode的:
<asp:RadioButton ID="selType1" GroupName="Type" runat="server" CssClass="radioB" Checked="true" />
萤火虫:
<span class="radioB">
<input id="ctl00_ctl00_BodyContentHolder_TestController_1_selType1" name="ctl00$ctl00$BodyContentHolder$TestController_1$Type" value="selType1"` checked="checked" type="radio">
出于某种原因,SPAN标记获取类名,而不是INPUT标记。
任何人都知道这是为什么?
THX Marthin
答案 0 :(得分:4)
我有一个理论为什么它想要在输入元素上创建一个带有类的span。如果有多个输入具有相同的类名彼此相邻,那么它也可以创建一个跨度来覆盖它们,而不是为它们指定class =“radioB”。众所周知,ASP.NET组件会吐出一些丑陋的HTML。
这是使radioB类在input元素上工作的一种解决方案,以下列方式修改radioB类的CSS:
.radioB input
{
...
}
但是可能还有其他解决方案,请尝试以下代码:
selType1.InputAttributes["class"] = "radioB";
答案 1 :(得分:1)
我遇到了同样的问题,这是你分配给单选按钮的文本字符串,用于获取样式。
为了解决这个问题,我编写了一个JQuery脚本,在脚本加载时获取父span类。
复选框也存在同样的问题。 这是我的剧本:
$("input[type=checkbox]").each(function() {
$(this).attr("class", $(this).parent().attr("class"));
$(this).parent().attr("class", "");
});
也许您想要自定义它,例如只需将类添加到 RadioButton ,而不是从父级中删除