jqueryを使用してチェックボックスの選択とスタイルを動的に変更する

権限を選択すると、次のような問題が発生しました。

<div class="layui-form-item"> 
    <label class="layui-form-label">权制限</label> 
    <div class="layui-input-block"> 
        {foreach $menus as $k=> $v} 
            <div> 
                <input type="checkbox"lay-filter="チェックボックス" class="チェックボックス" name="roleids[]"lay-skin="primary" title="{$v['name'] }" selected="" value="{$v['id']}"> 

                <div class="son"> 
                    {foreach $v['son'] as $kk=>$vv} 
                        <input type=" checkbox"lay-filter="checkbox" class="checkbox" name="roleids[]"lay-skin="primary" title="{$vv['name']}" selected="" value="{$ vv['id']}"> 
                    {/foreach} 
                </div> 
            </div> 
            <div style="height: 15px"></div> 
        {/foreach} 
    </div> 
</div>

form.on('checkbox(checkboxs)', function(data){ 
    checked=data.elem.checked; //チェックされているか、true か false 
    $(this).next().next().find(' . checkbox').each(function (){ 
        $(this).prop('checked',checked) 
        form.render(); 
    }) 
}); 

form.on('checkbox(チェックボックス)', function(data) { 
    selected=data.elem.checked; //チェックされているか、true か false 
    //兄弟チェックに選択した番号がまだあるかどうかを判断します
    varcheckednum=0 
    $(this).parent('.son').find( '.checkbox ').each(function (){ 
        if($(this).prop('checked')){ 
            checkednum++ 
        } 
    }) 
    if(checkednum>0){ 
        $(this).parent('.son') .prev( ).prev().prop('checked',true) 
    }else{ 
        $(this).parent('.son').prev().prev().prop('checked',false) 
    } 
    form.render (); 
});

録画して共有するだけです。気に入らない場合はコメントしないでください

おすすめ

転載: blog.csdn.net/zongxingfengyun/article/details/123822264