repeater嵌套的子repeater中radiobutton如何实现单选

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了repeater嵌套的子repeater中radiobutton如何实现单选相关的知识,希望对你有一定的参考价值。

给radiobutton设置 Group就可以了,
我们在使用服务器控件时,一定是学会查看这些控件在客户端的呈现类型,
html控件一样要学习哟。
<input type="radio" name="XX" />
<input type="radio" name="XX" />
<input type="radio" name="XX" />
<input type="radio" name="XX" />
如上面的代码,可以通过name属性来设置一组单选框。
使用服务器控件的话,可以通过下面的方法来实现
<asp:RadioButton ID="RadioButton1" runat="server" GroupName="XX" />
<asp:RadioButton ID="RadioButton2" runat="server" GroupName="XX" />
<asp:RadioButton ID="RadioButton3" runat="server" GroupName="XX" />
<asp:RadioButton ID="RadioButton4" runat="server" GroupName="XX" />
只要设置了GroupName就可以了,浏览器会帮你实现将这些Radio作为一组,只能选择一个。来自:求助得到的回答
参考技术A radiobutton加上

onclick="selectSingleRadio(this);"

function selectSingleRadio(rbtn)
var radio = document.getElementsByTagName("radio");
var arrAll=document.all;

for (i = 0; i < arrAll.length; i++)
if (arrAll[i].type == "radio")
arrAll[i].checked = false;



rbtn.checked = true;
追问

这个有啊,但是多条数据全部只能选择一个。我要的是每条数据选择一个实现单选,好比好多单选题一样

追答

用 ' onclick="selectSingleRadio(this);" id=""/>
里面的ID是每一条的唯一标识,可以是你的每条数据的ID,下面用rbtn.value得到value
然后在if (arrAll[i].type == "radio") 在这里判断一下 arrAll[i].value 是不是一组的

追问

如何判断arrAll[i].value 是不是一组的?谢谢

追答

arrAll[i].value =id 啊

参考技术B ruant=“server”去掉。。name属性的值相同就行了。追问

去掉后后台无法取到选中的值

追答

可以取值啊。用findcontrol,或者前台加一个hidden控件。用js取到radio的value值复制给hidden,后台取hidden值

参考技术C radiobuttonlist不行吗追问

不行,我在里面repeater里放了个' onclick="selectSingleRadio(this,'FlowCode');"/>
不能实现单选,去掉runat="server" 可以

参考技术D ?///?

以上是关于repeater嵌套的子repeater中radiobutton如何实现单选的主要内容,如果未能解决你的问题,请参考以下文章

repeater嵌套repeater

在嵌套的 ng-repeat 中传递 2 个 $index 值

ng-repeat动态创建嵌套ng-repeats的数组

ng-repeat嵌套的$index

嵌套 ng-repeat 拖放,AngularJS

角度过滤器,嵌套 ng-repeat