ASP.net服务器控件复选框误会

时间:2012-04-18 14:41:19

标签: asp.net

我正在尝试将服务器控件用于asp复选框:

<asp:CheckBox ID="generalInformation"
    ClientIDMode="Static"
    class="SetupChecklist"
    name="generalInformation"
    CssClass="SetupChecklist"
    runat="server" />

然而,它似乎并没有保留我需要它做的课程。我错过了什么吗?

以下是它在网页上呈现的方式:

<input type="checkbox"
    name="ctl00$ContentPlaceHolder1$generalInformation"
    id="generalInformation">

4 个答案:

答案 0 :(得分:1)

啊。......

这就是问题:

runat="server"复选框呈现给span + input ...

跨度得到的类不是输入....

 <span class="SetupChecklist" class="SetupChecklist" name="generalInformation">
<input id="generalInformation" type="checkbox" name="generalInformation" /></span>

答案 1 :(得分:1)

您可能希望改为使用CssClass属性:

<asp:CheckBox ID="generalInformation"
    ClientIDMode="Static"
    name="generalInformation"
    CssClass="SetupChecklist"
    runat="server" />

编辑:我刚才看到你已经尝试过了。好的,CssClass实际上将类应用于包装复选框的范围,因此请尝试以下方法:

generalInformation.InputAttributes("class", "SetupChecklist"); 

答案 2 :(得分:1)

它将呈现如下的HTML。

<span class="SetupChecklist" class="SetupChecklist" name="generalInformation">
     <input id="generalInformation" type="checkbox" name="generalInformation" />
</span>

假设您正在尝试设计输入标记。

现在,您的样式表可以如下所示<input>代码

<style type="text/css">
    .SetupChecklist input
    {
        border:0px;
    }
</style>

最初,span tag占据了class信息。

答案 3 :(得分:0)

删除class属性,只使用CssClass