我有一个包含textareas,文本,复选框和按钮的表单。我选择如下元素:
$("#frmPersonalInfo :input:not(input[type=radio]):not(input[type=button])").each(function(){
//code here
});
当我省略not(input[type=radio])
时,正在选择无线电元素。我想选择已经检查过的无线电(有效的无线电输入)。有没有办法做到这一点?
电台HTML代码如下:
<input type="radio" checked="checked" id="txtPersonalInfoMale" name="gender" value="1" />
<input type="radio" id="txtPersonalInfoFemale" name="gender" value="2" />
答案 0 :(得分:4)
使用:checked
选中所有选中的复选框
$("#frmPersonalInfo :input[type=radio]:checked").each(function(){
//code here
});
如果您想选择一些输入类型,那么您可以这样做,您需要自定义它。
<强> Live Demo 强>
$("#frmPersonalInfo :input").not(':button').not(':text').filter(function(){
if($(this).attr('type') == 'radio' && $(this).attr('checked') == 'checked')
return $(this);
}).each(function(){
//Your code here
});
答案 1 :(得分:2)
这可能不是最好的方法,但下面应该有效
$("#frmPersonalInfo :input:not(input[type=radio]):not(input[type=button]),#frmPersonalInfo :input[type=radio]:checked").each(function(){
//code here
});
答案 2 :(得分:0)
为了实现我的目标,我做了以下事情:
var cnt=0;
$("#frmPersonalInfo :input[type=radio]:checked").each(function(){
personalInfoArr[cnt++]=$(this).val();
});
$("#frmPersonalInfo :input:not(input[type=radio]):not(input[type=button])").each(function(){
personalInfoArr[cnt++]=$(this).val();
});
有更好的方法吗?
答案 3 :(得分:-2)
不应该是这样的吗?为什么所有:不是?
$("#frmPersonalInfo input[type=radio]:selected").each(function(){
//code here
});
老兄,也许我不明白你的问题。
jQuery有一个&#34 ;: selected&#34;选择。
你可以在这里找到所有的信息: