0

HTMLテーブル(ASP:Repeaterコントロールで生成)があります。テーブルに2つのチェックボックス列があります。両方の列のヘッダーに[すべて選択]チェックボックスがあります。したがって、[すべて選択]をオンにすると、それぞれの列のすべてのチェックボックスがオンになります(ごく普通のことです。これで処理しました)。ここで問題となるのは、column_1XRow_1のチェックボックスをオン/オフにすると、column_2XRow_1のチェックボックスが有効になり、チェック/無効になり、オフになります。

`

$(document).ready(function() {
    var $ResubAllChkBx = $('.ResubAll :checkbox');
    var $ResubItmChkBx = $('.ResubItm :checkbox');
    var $LLLCAllChkBx = $('.LLLCAll :checkbox');
    var $LLLCItmChkBx = $('.LLLCItm :checkbox');

    $ResubAllChkBx.change(function() {
        Chk_UnChkResubAll();
    });

    function Chk_UnChkResubAll() {
        if ($ResubAllChkBx.is(':checked')) {
            $ResubItmChkBx.filter(function() { return !this.disabled; }).attr('checked', 'checked');//check only when enabled
        }
        else {
            $ResubItmChkBx.filter(function() { return !this.disabled; }).removeAttr('checked');//check only when enabled
        }
    }
});`

つまり、本質的にRe subはCol1であり、LLLCはCol2です。

私はこれらすべてをプレーンなJSコードで実行しましたが、ページの負荷が原因で、JSエラー「このページのスクリプト......」が表示され始めます。

col1とcol2のチェックボックス/チェックボックスをオフにするにはどうすればよいですか?助けてください。jQueryのコードが必要です。

ありがとうボビー

4

1 に答える 1

0

次のスクリプトをjqueryコードに追加します...

$('.ResubItm :checkbox').on('change', function(){    
    if($(this).is(':checked'))
        $(this).siblings('[type=checkbox]').each(function(){
            $(this).attr('checked','checked');
        })
    else
        $(this).siblings('[type=checkbox]').each(function(){
            $(this).attr('checked','');
        })
});


$('.LLLCItm :checkbox').on('change', function(){
    if($(this).is(':checked'))
        $(this).siblings('[type=checkbox]').each(function(){
            $(this).attr('checked','checked');
        })
    else
        $(this).siblings('[type=checkbox]').each(function(){
            $(this).attr('checked','');
        })
});
于 2012-04-11T21:25:06.207 に答える