【发布时间】:2015-12-01 11:53:07
【问题描述】:
我正在寻找关于我应该以何种方式为客户提供解决方案的知情意见。
解决方案涉及在 asp:Repeater 中使用单选按钮。最初我选择使用 asp:RadioButtonList 但我遇到的问题是它坚持提供文本标签,当使用 DataSourceID 时,我无法用标签标签封装单选按钮标签,从而阻止我提供更大的点击区域任何使用触摸屏设备的人。
呈现如下:
<td>
<input />
<label />
</td>
我想要的是:
<td>
<label>
<input />
</label>
</td>
我可以通过在标签标签中包装一个 asp:RadioButton 来实现上述目的。但是随后找出 GroupName 中的哪个单选按钮已被选中,这意味着我需要遍历每个单选按钮并检查其选中的属性。不是很优雅。
我对该主题进行了一些研究,看起来我可以使用 CSS 来移动 asp:RadioButtonList 单选按钮的位置,使其看起来像是包含在标签中并删除标签文本。
从 asp:RadioButtonList 中删除 DataSourceID 将完全删除 <label> 标记。所以我可以在每个单选按钮周围插入一个标签。
或者只是采用简单的方法,删除 asp:RadioButtonList 并遍历每个 asp:RadioButton,直到找到选中的单选按钮。
我所有的“想法”似乎都过于复杂而且不是特别优雅。有没有人遇到过类似的问题?
【问题讨论】: