var sex =$("input[@name='sex']:checked").val();
<td><input name="sex"    type="radio" value="女" checked="checked" />
      女
        <input type="radio" name="sex"   value="男"  />
        男</td>
只要设置了默认checked="checked"  取值只能取到女
如果不设置默认 取值正常
请问怎么解决?

解决方案 »

  1.   


    var sex =$("input[@name='sex']:checked").val();
    //var sex =$("input[name='sex']:checked").val();  //如果上面一行不ok,试这里
    if(sex=='undefined')
    alert('没有选中');
    else
    alert('选中的值为'+sex);
      

  2.   


    这个还不可以吗?
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>TEST</title>
    <style type="text/css">
    *{ font-family:verdana; font-size:12px;}
    </style>
    <script language="javascript" type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js"></script>
    </head>
    <body>
    <script language="javascript" type="text/javascript">
    function getSex(){
    var s=$("input[name='sex']:checked").val();
    if(typeof(s)=='undefined')
    alert('没有选中');
    else
    alert('选中的性别值为: '+s);
    }
    </script>
    <input type="radio" name="sex" value="女" />  女
    <input type="radio" name="sex" value="男" />  男
    <a href="javascript:getSex();">get sex value</a>
    </body>
    </html>
      

  3.   

    代码上下,谁先出现,
    谁就默认 选中了
    不用设置默认值的
    <input type="radio" name="NANA" id="A"  />AA
    <input type="radio" name="NANA" id="B"/>BB
    这样 默认肯定是A了
      

  4.   

    var sex =$("input[name=sex]:checked").val();
      

  5.   

    var sex=$('input:checkbox[name="sex"]:checked').val();
      

  6.   

    var input_mode = $("input:radio[name='sex'][checked]").val();
      

  7.   

    实在不行,那你就取两个值吧,然后把checked为true的那个值取来用不就行了。