如何使用索引检查单选按钮.. 下面是我用于radion按钮列表的asp.net C#代码......
<asp:RadioButtonList runat="server" ID="rdlCategory" CssClass="clsradio" AppendDataBoundItems="true" RepeatDirection="Horizontal" RepeatLayout="Flow" >
</asp:RadioButtonList>
并动态地使用C#绑定它 和Html看起来像
<span class="clsradio" id="ctl00_cphTop_rdlCategory"><input type="radio" value="8" name="ctl00$cphTop$rdlCategory" id="ctl00_cphTop_rdlCategory_0">
<label for="ctl00_cphTop_rdlCategory_0">category1</label>
<input type="radio" value="11" name="ctl00$cphTop$rdlCategory" id="ctl00_cphTop_rdlCategory_1">
<label for="ctl00_cphTop_rdlCategory_1">category2</label>
<input type="radio" value="22" name="ctl00$cphTop$rdlCategory" id="ctl00_cphTop_rdlCategory_2">
<label for="ctl00_cphTop_rdlCategory_2">category3</label>
<input type="radio" value="33" name="ctl00$cphTop$rdlCategory" id="ctl00_cphTop_rdlCategory_3">
<label for="ctl00_cphTop_rdlCategory_3">category4</label>
<input type="radio" value="34" name="ctl00$cphTop$rdlCategory" id="ctl00_cphTop_rdlCategory_4">
<label for="ctl00_cphTop_rdlCategory_4">category5</label>
</span>
我想通过索引值将属性checked = true添加到单选按钮
假设,我通过了index = 2然后应该选择Category2 ..
或者也想在jquery中使用选择(checked = true)单选按钮索引。
我是怎么做到的?
答案 0 :(得分:2)
与选择框不同,单选按钮中并没有真正的索引概念。
但是你可以在jQuery中做这样的事情:
$(".clsradio input:checked").index();
哪个将获取您检查范围内的所有输入框(如果只有一个组位于.clsradio内,则使用无线电的应该只有一个。)
编辑:
更完整的证明示例(但速度较慢)将是:
$("input[name$='rdlCategory']:checked").index();
获取以rdlCategory结尾的输入。你甚至可以添加“:radio”,但你不需要。
编辑2 - 通过传入索引进行检查。
您可以使用:
$(".clsradio input:nth-child(5)").attr("checked", "checked");
使用“input”选择器的nth-child可以用作索引。
答案 1 :(得分:1)
使用jquery的index方法
function selectRadioButton(inputindex){
$('input[name="ctl00$cphTop$rdlCategory"]').index(inputindex).attr('checked', true);
}
获取选定的单选按钮索引...
var selectedIndex = $('input[name="ctl00$cphTop$rdlCategory"]').attr('checked', true).index(inputindex);
答案 2 :(得分:1)
$("#<%= rdlCategory.ClientID %> input:checked").index();
至于如何使用jQuery在ASP.NET中选择项目,我不确定它是否适用于所有场景。每次触摸ASP.NET控件时ASP.NET都会更新ViewState,因此我不会使用太多jQuery来操作选择值
如果你还想要这个$(selector).attr("checked",true);
答案 3 :(得分:1)
这对我有用:
$($("input[name='GroupName']").get(index)).prop('checked', true);
说明:
$("input[name='GroupName']")
返回名称为“GroupName”
.get(index)
返回列表中的i
项。对于无线电组,这将是您想要的输入标签。
输入标记是HTML元素,而不是jQuery项,因此您重新包装它。然后,您可以调用prop
方法。
$(html).prop('checked',true)
答案 4 :(得分:0)
未选中将提供“未定义”,否则将返回所选对象的值。
$('input[name=ctl00$cphTop$rdlCategory]:checked').val()