0

私はこのコードを持っています。

        var check = true;
        $('#selectall').click(function () {
            $("form input[type='checkbox']").attr ("checked", true);
            if (check){
                check = false;
                $('#checktodos').attr("src", "check_off.png");
            }
            else {
                $('#checktodos').attr("src", "check_on.png");
                $("form input[type='checkbox']").attr ("checked", false);
            }
        });

ID = "selectall" のボタンをクリックすると、すべてのチェックボックスが選択され、イメージ ボタンが変更されます。次に、同じボタンをもう一度クリックすると、すべてのチェックボがオフになり、画像が最初の画像に戻ります。

ボタンを 3 回クリックしても、画像ボタンは変化せず、チェックボックスも選択されていません。これを無制限にやりたい。

4

1 に答える 1

0

次をelse条件に追加してみてください。

check = true;

var check を false に設定しましたが、決して true に戻りません。

アップデート:

JSFiddle の例: http://jsfiddle.net/4ZzUc/

jQuery > 1.5 のバージョンを使用しているように見えるので、 .prop("checked", true); を使用する必要があります。.attr("checked", true); の代わりに

于 2013-02-16T18:40:32.503 に答える