8

一連のチェックボックスを含むフォームがあります。すべてのチェックボックスがオフになっている場合、送信を押した後、ユーザーに警告したいと思います。次のコードを使用して、チェックボックスのすべての値を報告しています。

$('[id^=leg_rider]').filter(':checked');

これはうまくいくようです。ただし、返されたオブジェクトが空かどうかを確認しようとすると、うまくいかないようです。これは私がしようとしているものです:

        $("#set_pref_submit").click(function() {
        var legchecked = $('[id^=leg_rider]').filter(':checked');
        if (!legchecked){ alert("no riders")};
    });

任意の提案をいただければ幸いです。ありがとう!

4

5 に答える 5

13

jQuery オブジェクトのlengthプロパティを使用できます。

$("#set_pref_submit").click(function() {
    var legchecked = $('input[id^=leg_rider]:checked').length;
    if (legchecked){ alert("no riders")};
});
于 2012-08-02T23:56:24.740 に答える
5

ワーキングデモhttp://jsfiddle.net/MrkfW/

これを試してください:.change APIも使用して追跡します:)

API: http://api.jquery.com/change/

$("input[type='checkbox'][id^=leg_rider]").change(function(){
    var a = $("input[type='checkbox'][id^=leg_rider]");
    if(a.length == a.filter(":checked").length){
        alert('all checked');
    } else {
        alert('not all checked');
    }
});
于 2012-08-02T23:56:16.030 に答える
2

これを試して:

私のHTML:

<input id="chkbx_0" type="checkbox" class="checkbox" name="c_n_0" checked="checked" />Option 1
<br/><input id="chkbx_1" type="checkbox" class="checkbox" name="c_n_1" />Option 2
<br/><input id="chkbx_2" type="checkbox" class="checkbox" name="c_n_2" />Option 3
<br/><input id="chkbx_3" type="checkbox" class="checkbox" name="c_n_3" checked="checked" />Option 4
<br/><br/>
<input type="button" value="Click me" class="testall"/>​

私のJQueryコード:

jQuery(".testall").click(function () {
    if (jQuery(".checkbox:checked").length == 0) { alert("no riders"); }
});

実際の例: http://jsfiddle.net/webwarrior/NJwv4/9/

これにより、特定のチェックボックスのみをオンにするオプションが提供されます。

hth、ショーン

于 2012-08-03T00:11:29.410 に答える
0
if (legchecked.size() == 0){ alert("no riders")};
于 2012-08-02T23:56:01.793 に答える