标记父项,其中单击任何子复选框

时间:2015-01-15 03:52:50

标签: jquery treeview

我有我的类别和子类别的树视图。树太长,无法在类别下找到选定的子类别。

<ul id="user_tender_cat" class="treeview-black treeview">
    <li class="expandable"><div class="hitarea expandable-hitarea"></div>
        <span>
            <input name="cat_ids[]" class="cat-ids cat-id-1" value="1" checked="checked" type="checkbox">
            Agricultural/Forestry/Nursery Items
        </span>
        <ul>
            <li>
                <span>
                    <input name="sub_cat_ids[]" class="sub-cat-ids sub-cat-id-2" value="2" type="checkbox">
                    Agricultural Machinery &amp; Equipment
                </span>
            </li>
            <li>
                <span>
                    <input name="sub_cat_ids[]" class="sub-cat-ids sub-cat-id-1" value="1" type="checkbox">
                    Agricultural Pruducts
                </span>
            </li>
            ........
        </ul>
    </li>
    <li class="expandable"><div class="hitarea expandable-hitarea"></div>
        <span>
            <input name="cat_ids[]" class="cat-ids cat-id-2" value="2" checked="checked" type="checkbox">
            Art/Craft/Entertainment/Fashion/Painting
        </span>
        <ul>
            <li>
                <span>
                    <input name="sub_cat_ids[]" class="sub-cat-ids sub-cat-id-21" value="21" type="checkbox">
                    Advertisement &amp; Related
                </span>
            </li>
            <li>
                <span>
                    <input name="sub_cat_ids[]" class="sub-cat-ids sub-cat-id-19" value="19" type="checkbox">
                    Band/Musical Instrument
                </span>
            </li>
            ......
        </ul>
    </li>
    ............
</ul>

现在我想在类别范围中添加一个类,其中检查任何子子类别。我尝试过一些jQuery,但仍然可以获得任何好的解决方案。那么有人帮助我吗?提前谢谢。

2 个答案:

答案 0 :(得分:2)

在更改任何子类别时,Jquery使用选择器函数找到特定的父类别,并将selected类添加到父类别。尝试阅读更多{{1} } here。希望这可以帮助你扩展配偶.. :)

selector function

Fiddle

答案 1 :(得分:0)

您可以使用:

 $('#user_tender_cat input').change(function(){
   $(this).parent().toggleClass('smclass',this.checked);
 }).change();

<强> Working Demo