我有两个单选按钮,希望发布所选按钮的值。如何使用jQuery获取值?

我可以得到所有这些:

$("form :radio")

我如何知道选择了哪一个?


当前回答

我发布了一个库来帮助解决这个问题。实际上,提取所有可能的输入值,但也包括选中的单选按钮。你可以在https://github.com/mazondo/formalizedata

它将为您提供一个包含答案的js对象,因此表单如下:

<form>
<input type="radio" name"favorite-color" value="blue" checked> Blue
<input type="radio" name="favorite-color" value="red"> Red
</form>

将给您:

$("form").formalizeData()
{
  "favorite-color" : "blue"
}

其他回答

Try

myForm.myOption.value

函数检查(){console.log(myForm.myOption.value);}<form id=“myForm”><input-type=“radio”name=“myOption”value=“1”>1<br><input-type=“radio”name=“myOption”value=“2”>2<br><input-type=“radio”name=“myOption”value=“3”>3<br></form><button onclick=“check()”>check</button>

在我的例子中,我在一个表单中有两个单选按钮,我想知道每个按钮的状态。以下内容适用于我:

//获取单选按钮值console.log(“radio1:”+$('input[id=radio1]:checked','#toggle form').val());console.log(“radio2:”+$('input[id=radio2]:checked','#toggle form').val());<script src=“https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js“></script><form id=“toggle form”><div id=“radio”><input type=“radio”id=“radio1”name=“radio“checked=”checked“/><label for=”radio1“>绘制单个</label><input type=“radio”id=“radio2”name=“radio”/><label for=“radio2”>全部绘制</label></div></form>

jQuery插件,用于设置和获取单选按钮值。它还尊重他们身上的“变化”事件。

 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <form id="toggle-form">
      <div id="radio">
        <input type="radio" id="radio1" name="radio" checked="checked" /><label for="radio1">Plot single</label>
        <input type="radio" id="radio2" name="radio"/><label for="radio2">Plot all</label>
      </div>
    </form>
    <script type="text/javascript">
    $( document ).ready(function() {
     //Get all radios:
     var radios = jQuery("input[type='radio']");
     checked_radios=radios.filter(":checked");
for(i=0;i<checked_radios.length;i++)
{
   console.log(checked_radios[i]);
}

    });
    </script>

或者其他方式

<script type="text/javascript">
$( document ).ready(function() {
  //Get all radios:
  checked_radios=jQuery('input[name=radio]:checked').val(); 
for(i=0;i<checked_radios.length;i++)
{
   console.log(checked_radios[i]);
}

});
</script>

使用$('input[name=“radioName”]').filter(“:checked”).val();对我来说是最好的方式。

经过测试,这是可行的

Form

<form id="myForm">
  <input type="radio" name="radioName" value="Option1"> Option1
  <input type="radio" name="radioName" value="Option2" checked> Option2
  <input type="radio" name="radioName" value="Option3"> Option3
</form>

滑动分页

$(document).ready(function() {
  $('input[name="radioName"]').on('change', function() {
     const val = $(this).filter(":checked").val();
     alert(val);
  })

  // First load check
  const val = $('input[name="radioName"]').filter(":checked").val();
  alert(val);
});

此处示例:https://codepen.io/abinhho/pen/mdLrqbX

要获取使用类的所选收音机的值,请执行以下操作:

$('.class:checked').val()