<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript" src="js/jquery-1.3.2.js"></script>
<script type="text/javascript">
function at() {
s = $("input[name=aa][checked]").val();
alert(s);
}
</script>
</head><body>
<input type="radio" name="aa" value="0">option1 &nbsp; <input type="radio" name="aa" value="2">option2<br />
<input type="button" value="Click" onclick="at()" />
</body>
</html>
查了半天,都说获取radio值是用的这种方法,
单选组radio:   $("input[@type=radio][@checked]").val();
因为jquery版本更新了,所有不需要加@修饰符,
问题是,我去掉了修饰符,还是得不到值啊,一直alert出来的是 undefined, 求解。

解决方案 »

  1.   


    s = $("input[name='aa'][checked]").val();
      

  2.   

    楼上正解,当然也可以s = $("input:checked[name='aa']").val();或者 s=$(":radio[name='aa'][checked]").val();
      

  3.   

    s = $("input[name=aa]:checked").val();
      

  4.   

    s=$(":radio[name='aa']:checked").val();
    就可以鸟。。
      

  5.   

    谢谢各位的回复,经本人测试,
    除 s = $("input[name='aa'][checked]").val();不能得到正确的值
    之外,其余均可得到!
      

  6.   


    这个也可以的,我试过了。你的name后面要用英文状态下的单引号。