纠正jQuery获取radio选中值的写法

先看一段代码

<input type="radio" name="aaa" value="1" checked="true">aaa
<input type="radio" name="aaa" value="2">bbb
<input type="radio" name="aaa" value="3">ccc <input type="button" value="ok" onclick="doTest()">
<script language="JavaScript">
<!--
function doTest(){
alert($("input[name='aaa'][checked]").val());
}
//-->
</script>

网上流行的说法就是

$(input[name='aaa'][checked]).val()

能取到选中项的value,但我测试后发现只在IE下有效,在firefox和Chrome中不论选中哪一项,或者不选,取到的值都是第一项的value
正确做法应该是

$("input[name='aaa']:checked").val()

同样对于checkbox也是这种写法

以上出自 “厚土常丰” 博客,请务必保留此出处http://xwebos.blog.51cto.com/3398850/642888

下文为楼主自己测试出来的方法:

function getAll() {
var str = "";
$("[name='chk'][checked]").each(function() {
str += $(this).val() + ",";
})
pagerForm.chkFlag.value = str;
}
上一篇:Error creating bean with name 'bootstrapImportSelectorConfiguration': Initialization of bean failed;


下一篇:Jquery 获取 radio选中值,select选中值