0

2つの項目でチェックボックスを使用しましたが、チェックボックスの2番目のグループの値を取得できます。私が使用するチェックボックスの最初のグループ:

<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

ラジオボタンが必要です(一度に1つのオプションしか選択できません)

<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

これでは希望する効果が得られ、代わりにチェックボックスがグループ化され、チェックボックスからのすべての入力が1つの配列になります。この方法でも、複数のチェックボックスを選択することができます

于 2012-04-13T09:57:38.100 に答える
3

複数のチェックボックスを使用している場合は、次のコードを使用してチェックボックスの値を取得できます。

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

于 2012-04-19T02:58:18.000 に答える
1

そして、ラジオボタンの値を document.formName.radioboxName.valueとして取得します。

ラジオボタンに同じ名前を付けているため、選択できる値は1つだけです。

于 2012-04-13T10:09:01.517 に答える
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

キャサリン両方のグループから1つのアイテムを選択する場合は、ラジオを選択する必要があります。そうしないと、チェックボックスを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

jQueryPureJavascriptはありません

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