获取一组单选按钮值

时间:2018-04-19 18:33:34

标签: javascript jquery radio-button

给出一组单选按钮。如何获取其值的数组(包括空值),例如给定。



// use jquery to display [Yes, null, null, No]

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>
    true     <input type="radio" name="one" value="Yes" checked>
    false    <input type="radio" name="one" value="No">
    </p>
    <p>
    true     <input type="radio" name="two" value="Yes">
    false    <input type="radio" name="two" value="No">
    </p>
    <p>
    true     <input type="radio" name="three" value="Yes" >
    false    <input type="radio" name="three" value="No" >
    </p>
    <p>
    true     <input type="radio" name="three" value="Yes">
    false    <input type="radio" name="three" value="No" checked >
    </p>
&#13;
&#13;
&#13;

我如何获得[是,null,null否]

2 个答案:

答案 0 :(得分:2)

1。 您需要检查每个<p>已检查的广播框长度

2。 如果长度为0,则将NULL推送到数组,否则按下已检查的单选按钮值

工作代码段: -

$(document).ready(function(){
  var radio_arr = [];
  $('p').each(function(){
    radio_arr.push($(this).find('input[type=radio]:checked').length ? $(this).find('input[type=radio]:checked').val() : 'NULL');
  });
  console.log(radio_arr);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>
    true     <input type="radio" name="one" value="Yes" checked>
    false    <input type="radio" name="one" value="No">
    </p>
    <p>
    true     <input type="radio" name="two" value="Yes">
    false    <input type="radio" name="two" value="No">
    </p>
    <p>
    true     <input type="radio" name="three" value="Yes" >
    false    <input type="radio" name="three" value="No" >
    </p>
    <p>
    true     <input type="radio" name="three" value="Yes">
    false    <input type="radio" name="three" value="No" checked >
    </p>

答案 1 :(得分:0)

您可以迭代每个单独的输入分组并返回具有checked属性的值的值:

var groups = ['one', 'two', 'three','four'];
var result = [];

groups.forEach(function(group,i){
  result[i] = $('input[name='+group+']:checked').attr('value')  
});

console.log(result); // will print ["Yes", undefined, undefined, "No"]

Here's a working example。您的HTML目前有第三组和第四组,两者都命名为&#34;三个&#34;所以我把最后一个更改为&#34;四个&#34;为了更好地匹配您希望得到的结果。

如果您真的想要null作为响应,只需添加条件以返回null如果值=== undefined,但似乎无用