0

我在两个项目中使用了复选框,现在我可以获得第二组复选框的值。我使用的第一组复选框:

<input name="option" type="checkbox" value="1" id="option1">option 1
<input name="option" type="checkbox" value="2" id="option2">option 2

然后

<input name="choice" type="checkbox" value="1" id="choice1">choice 1
<input name="choice" type="checkbox" value="2" id="choice2">choice 2

如何获取选定复选框的值,在每个组中只允许选择 1 个复选框。

我只需要javascript函数

4

6 回答 6

5

您想要一个单选按钮,(一次只能选择一个选项)

<input name="option" type="radio" value="1" id="option1">option 1
<input name="option" type="radio" value="2" id="option2">option 2

复选框可以通过将 [] 附加到其名称的末尾来分组为数组:

<input name="option[]" type="checkbox" value="1" id="option1">option 1
<input name="option[]" type="checkbox" value="2" id="option2">option 2

不会得到您想要的效果,而是将复选框分组,以便它们的所有输入都将产生一个数组。仍然可以使用此方法选择多个复选框

于 2012-04-13T09:57:38.100 回答
3

如果您使用多个复选框,则可以使用以下代码获取复选框的值。

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

于 2012-04-19T02:58:18.000 回答
1

使用 jQuery

var checked; 
$("input").each(function () {
   if ($(this).is(':checked'))
     checked[ $(this).attr("name")] = $(this).attr("value")
})
//checked is an array/object with all your checked checkboxs
于 2012-04-13T10:11:29.240 回答
1

并将单选按钮的值检索为 document.formName.radioboxName.value;

由于您为单选按钮提供相同的名称,因此只能选择一个值。

于 2012-04-13T10:09:01.517 回答
1

凯瑟琳,如果你想从两个组中选择一个项目,那么你应该选择收音机,否则你不能限制只选择一个复选框,而且你不必为此编写大量价值较低的代码。

您还必须提到复选框数组。您采用的语法是错误的,正确的是

<input name="option[]" type="checkbox" value="1" id="option1">option 1
<input name="option[]" type="checkbox" value="2" id="option2">option 2

和收音机

<input name="option" type="radio" value="1" id="option1">option 1
<input name="option" type="radio" value="2" id="option2">option 2
于 2012-04-19T02:04:28.347 回答
0

没有 jQuery 纯 Javascript

const checkedArr = Array.from(
    document.querySelectorAll(`input[name=myCheckboxGroup]:checked`)).map(node=>node.value);
于 2021-05-25T05:52:59.520 回答