我已经创建了带有radiobutton的转发器和来自db的绑定数据,所有工作都很好而不是css和groupName ..当渲染时 - 它不起作用,用户可以检查所有的radiobuttons而不是一个... 这是我的代码,请帮忙......
<asp:Repeater ID="rptList" runat="server">
<ItemTemplate>
<ul><li>
<asp:RadioButton ID="RadioButton8"
runat="server"
CssClass="w1"
GroupName="Options"
Text='<%# DataBinder.Eval(Container.DataItem, "EvName")%>'
ValidationGroup="Options" />
</li></ul>
</ItemTemplate>
</asp:Repeater>
答案 0 :(得分:1)
我遇到了同样的问题。 我找不到不使用jquery的方法。
我能够使用本教程解决我的问题。 http://blog.marketnet.com/index.php/2010/03/01/overcoming-the-radio-button-repeater-bug/
从教程中复制:
在标记文件中,添加以下Javascript和jQuery:
<script type=”text/javascript” language=”javascript”>
function SetUniqueRadioButton(strGroupName, current)
{
$("input[name$='" + strGroupName + "']").attr('checked', false);
current.checked = true;
}
</script>
使用RadioButton控件设置Repeater控件:
<asp:Repeater ID="rptMyRepeater" runat="server">
<ItemTemplate>
<asp:RadioButton ID="rdoButton" GroupName="GroupName" runat="server"/>
</ItemTemplate>
</asp:Repeater>
最后,在代码隐藏文件中:
rdoButton.Attributes.Add("onclick", "SetUniqueRadioButton('MyGroupName',this)");