单选按钮不会改变“optionS” - AJAX / JAVASCRIPT

时间:2014-04-18 04:22:54

标签: javascript jquery html mysql ajax

我正在尝试将此表单解析为php - > MySQL的。我的问题是AJAX中的var g。它始终是最佳输入选项,并且不响应用户选择。在这种情况下,DB将始终显示“f”。有什么想法吗?

  <input id="gender" type="radio" name="gender" value="f">Female
  <input id="gender" type="radio" name="gender" value="m">Male

  <input id="signupbtn"  onclick="signup()" type="submit" value="Sign Up">
    <span id="status"></span>
</form>

function signup(){
    var g = _("gender").value;

4 个答案:

答案 0 :(得分:1)

将此值用于g值 查看此处JsFiddle code

$("#signupbtn").click(function ()
                      {
    var g= "";
    var selected = $("input[type='radio']:checked");
    if (selected.length > 0) {
    g= selected.val();
}
   });

答案 1 :(得分:0)

id对于页面上的元素应该是唯一的。因为这(并且,我相信,取决于浏览器),看起来getElementById()只返回该id的第一个元素。要解决此问题,您可以尝试:

var theRadio=document.getElementsByName("gender");
for (var I=0; I<theRadio.length; I++){
    if (theRadio[I].checked){
        var g=theRadio[I].value;
        break;
    }
}

这应该有效 - 循环并检查。

答案 2 :(得分:0)

使用此,

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

答案 3 :(得分:0)

试试这个,这是在工作状态:

function signup() {

        var isRadioBtnChecked = $('input:radio[name=gender]').is(':checked');
        if (isRadioBtnChecked) {
        var selectedGender = $('input:radio[name=gender]:checked').val();
        }
    }

感谢。