0

すべてのチェックボックスを JQuery でチェックしたいだけです。これらのチェックボックスは JSF で作成されます。

私は試した :

$("input[type=checkbox]").each( 
        function() {              
           $(this).prop('checked', true);
// OR
           $(this).attr('checked', true);
// OR         
           $(this).attr('checked', 'checked');
          alert($(this).attr('id'));
            } 
        );

何も機能しません...

JSFが問題になる可能性はありますか? これらのチェックボックスの値は、マネージド Bean のブール値にリンクされています。

手伝ってくれてありがとう。

PS:私のアラート()関数はチェックボックスのIDを正しく返し、JQueryのバージョンは次のとおりです:

jQuery JavaScript ライブラリ v1.8.1

4

3 に答える 3

2

これでうまくいくはずです

$(":checkbox").prop('checked',true);

デモ

于 2012-10-29T15:40:00.520 に答える
1

わかりました、私は問題を理解したと思います...

このコードを試すと:

$(":checkbox").prop('checked',true);
$("input[type=checkbox]").each( 
        function() {          
          alert($(this).prop('checked'));               
        } 
    );

私は常にtrue値を持っていますが、いくつかのチェックボックスがチェックされていません...

したがって、値は変更されますが、ビジュアルは同じままです。これは、私が JSF を使用しており、次のようにレンダリングされているためです。

ここに画像の説明を入力 ここに画像の説明を入力

このチェックボックスはCSSの背景などでできています...

そのため、値がすでにtrueに設定されているため、このチェックボックスを視覚的にチェックできるように、親divのCSS(背景付き...)を変更する必要があります。

それは単なる視覚的な問題であり、価値の問題ではありませんでした。

ありがとうございました

于 2012-10-29T16:06:32.027 に答える
0

プレーン DOM を使用してみてください。

$("input[type=checkbox]").each(function() { this.checked = true; });

以下も参照してください。

jQueryでチェックボックスを「チェック済み」に設定しますか?

于 2012-10-29T15:53:55.053 に答える