0

私は 3 つの select2 ボックスを持っており、ページでは、1 つを使用するときに他の 2 つを無効にする必要があります。次のコードがありますが、機能しません。ページが読み込まれると、すべての select2 が消えます (HTML で非表示の入力として設定されます)。

$("#collection-search").change(function(){
            if($(this).val())
                $("#subject-search").select2("enable", false);
                $("#special-search").select2("enable", false);
            else
                $("#subject-search").select2("enable", true);
                $("#special-search").select2("enable", true);
        });

        $("#subject-search").change(function(){
            if($(this).val())
                $("#collection-search").select2("enable", false);
                $("special-search").select2("enable", false);
            else
                $("#collection-search").select2("enable", true);
                $("special-search").select2("enable", true);
        });

        $("#special-search").change(function(){
            if($(this).val())
                $("#collection-search").select2("enable", false);
                $("#subject-search").select2("enable", false);
            else
                $("#collection-search").select2("enable", true);
                $("#subject-search").select2("enable", true);
        });

なぜこれが起こっているのですか?FireBUG を調べていますが、有用なものは何も表示されません。私が確認できるのは、jquery.min.js の「else」ステートメントの構文エラーだけです。

4

1 に答える 1

0

コメントによると、これが回答形式のコードです-括弧を追加する必要がありました。それがうまくいくことを嬉しく思います!

$("#collection-search").change(function(){
        if($(this).val()) {
            $("#subject-search").select2("enable", false);
            $("#special-search").select2("enable", false);
        }
        else {
            $("#subject-search").select2("enable", true);
            $("#special-search").select2("enable", true);
        }
    });

    $("#subject-search").change(function(){
        if($(this).val()) {
            $("#collection-search").select2("enable", false);
            $("special-search").select2("enable", false);
        }
        else {
            $("#collection-search").select2("enable", true);
            $("#special-search").select2("enable", true);
        }
    });

    $("#special-search").change(function(){
        if($(this).val()) {
            $("#collection-search").select2("enable", false);
            $("#subject-search").select2("enable", false);
        }
        else {
            $("#collection-search").select2("enable", true);
            $("#subject-search").select2("enable", true);
        }
    });
于 2013-09-18T21:27:27.380 に答える