2

これは、私にはうまくいかない jQuery の非常に単純な使い方です。

片方のチェックボックスがオンになったら、もう一方もオンになるようにしたいです。

HTML:

<input onchange="toggleRegion()" id="ESARO" type="checkbox" class="region"
value="ESARO" name="ESARO">ESARO

<br /><br />

<input type="checkbox" class="country" value="Afghanistan" name="country2"
/>Afghanistan

jQuery:

function toggleRegion() {
    if ($('#ESARO').is(':checked')) {
        $('input[value="Afghanistan"]').attr('checked', true);
    }
}

jsfiddle:

http://jsfiddle.net/jsJU8/

私が試したこと:

クラスごとにチェックボックスのグループに対して非常によく似た機能を実行する別の関数があり、完全に機能します。

function toggleStatus() {
if ($('#TLO1').is(':checked')) {
        $('.country').attr('checked', true);

    } 
}

したがって、これが関数間の唯一の違いであるため、エラーはクラスではなく値による要素の選択にあると思います。

この目的のために、私が見つけたさまざまな例 (一重引用符、二重引用符、引用符なしなど) に一致するようにそのセレクターの構文を調整しようとしましたが、うまくいきませんでした.#

jQuery関数を呼び出すためにjavascript(onChange)を使用している可能性があることに注意してください。それは問題ですか?

すべての助けに感謝します - ありがとう

4

1 に答える 1

5

コードは機能していますが、最初のドロップダウンでラップなし (本文)オプションを選択する必要があります。

ライブデモ

function toggleRegion() {
    if ($('#ESARO').is(':checked')) {
        $('input[value="Afghanistan"]').attr('checked', true);
    }
}

ここに画像の説明を入力

于 2013-01-28T11:04:51.060 に答える