0

3 つのチェックボックスと送信ボタンがあります。

<form id="form1" action="/controller/action" method="post">
            <div class="checkbox"><input type="checkbox" name="box1" class="cBox" /><label for="box1" class="label">Box1</label></div>
            <div class="checkbox"><input type="checkbox" name="Box2" class="cBox" /><label for="Box2" class="label">Box2</label></div>
            <div class="checkbox"><input type="checkbox" name="Box3" class="cBox" /><label for="Box3" class="label">Box3</label></div>
            <input type="submit" value="Submit" />
</form>

「すべてのチェックボックスにチェックを入れてください!」と警告する次のjqueryがあります。チェックボックスがチェックされていない場合:

$(document).ready(function() {
    $('#form1').submit(function() {
        if ($('input:checkbox', this).is(':checked')) {
            // everything's fine...
        } else {
            alert('Please tick all checkboxes!');
            return false;
        }
    });
});

私が必要とするjQueryの使用:

すべてのチェックボックスがチェックされている場合、送信ボタンがクリックされると、「すべてのチェックボックスがチェックされています」というアラートが表示されます。

すべてのチェックボックスがクリックされていない場合は、「すべてのチェックボックスにチェックを入れてください!」というアラートが表示されます。提出する。

ありがとう

4

1 に答える 1

3

チェックボックスの数がチェックされたものの数と同じかどうかを確認できます。

$(document).ready(function() {
    $('#form1').submit(function() {
        if ($('input:checkbox', this).length == $('input:checked', this).length ) {
            // everything's fine...
        } else {
            alert('Please tick all checkboxes!');
            return false;
        }
    });
});
于 2012-08-23T23:40:51.457 に答える