2012-07-19 42 views
1

我有一个CheckListBox并指定项目上的工具提示。在呈现时,它显示复选框(和标签)周围的跨度,它是具有title属性的跨度,而不是复选框(输入类型=复选框)。ASP.NET CheckListBox 508合规

有谁知道如何设置输入元素,而不是周围跨度的标题属性?

为了符合508,我需要在输入元素上具有title属性,而不是在span上。

编辑:请注意,我宁愿在服务器端的C#中进行所有必要的更改。我宁愿不必在JavaScript/jQuery中做它。

回答

1

我张贴之前,我应该已经测试。最快的方法是使用老式的html控件,属性runat =“server”。然后你可以通过他们的ID来引用你的个人复选框。例如:

<asp:Panel ID="BrowserCheckBoxList" runat="server"> 
    <ul> 
     <li><input id="CheckBoxList1_0" type="checkbox" name="" value="Chrome" title="Chrome" runat="server" /> <label for="CheckBoxList1_0">Chrome</label></li> 
     <li><input id="CheckBoxList1_1" type="checkbox" name="" value="FireFox" title="FireFox" runat="server" /> <label for="CheckBoxList1_1">FireFox</label></li> 
     <li><input id="CheckBoxList1_2" type="checkbox" name="" value="IE" title="IE" runat="server" /> <label for="CheckBoxList1_2">IE</label></li> 
     <li><input id="CheckBoxList1_3" type="checkbox" name="" value="Opera" title="Opera" runat="server" /><label for="CheckBoxList1_3">Opera</label></li> 
     <li><input id="CheckBoxList1_4" type="checkbox" name="" value="Safari" title="Safari" runat="server" /><label for="CheckBoxList1_4">Safari</label></li> 
    </ul> 
</asp:Panel> 
+0

我很害怕那个...... – 2012-07-23 19:32:59

+0

竟然竟然联系了微软。基于他们实现它的时髦方式,没有办法访问CheckBoxList中各个复选框的输入元素。他们建议在复选框中使用具有CheckBoxes的TemplateField的GridView或具有CheckBoxes和InputAttributes的Repeater来设置title属性。 – 2012-08-06 04:30:50

+1

这取决于你正在构建的东西,但是与Repeater控件相比,GridView可能会在视图状态中增加更多开销。假设您将数据提交给代码隐藏而不是Web服务或其他内容,则您必须在代码隐藏方面做更多工作才能从提交的控件获取值。 – 2012-08-06 13:49:16

1

去过那里。无论如何,JavaScript无法帮助您,因为它不会更改源代码。

这应该修复它为您提供:

protected override void OnPreRender(EventArgs e) 
{ 
    base.OnPreRender(e); 
    foreach(ListItem li in CheckBoxList1.Items){ 
      li.Attributes["title"] = "my title"; 
     } 
} 
+0

是的,已经尝试过,但标题属性只是设置在跨度而不是输入。任何其他想法? – 2012-07-20 01:16:18

+0

Ed,请参阅下面我的下一个解决方案。这将起作用,尽管你的标记有点乏味。 – 2012-07-20 20:52:22

+1

另一个解决方案,特别是如果你想拥有一个可重复使用的508兼容控件,就是编写你自己的自定义控件。我之前没有提供代码,但我在这里找到了一个应该让您获得良好开端的示例 - http://www.jijeesh.8m.com/Articles/CustomCheckBoxList.html – 2012-07-22 19:46:32