DO YOU NEED A CONTENT WRITER FOR YOUR BUSINESS?

Your One-Stop Solution for All Content Needs! Click here for more!
jQuery

Check parent checkboxes in nested ul li – jQuery

Share

Sometimes in jQuery we need to select all checkbox that are child of a element or depends on child checkbox we need to select top most parent checkbox.

You need to iterate all children for which the parent you click in and the same way for a child we need to check top most parent.

Here is sample HTML :

<ul class="nested" id="nested">
<li>
<input type="checkbox" name="" value="1"> One
<ul>
<li><input type="checkbox" name="" value="1">Child 1 of One </li>
<li><input type="checkbox" name="" value="1">Child 2 of One</li>
<li><input type="checkbox" name="" value="1">Child 3 of One
<ul>
<li><input type="checkbox" name="" value="1">Child 1 of Child 3 of One</li>
<li><input type="checkbox" name="" value="1">Child 2 of Child 3 of One</li>
</ul>
</li>
</ul>
</li>
<li><input type="checkbox" name="" value="1"> Two</li>
<li><input type="checkbox" name="" value="1"> Three
<ul>
<li>
<input type="checkbox" name="" value="1">
Child 1 of Three </li>
<li><input type="checkbox" name="" value="1">Child 2 of Three
<ul>
<li><input type="checkbox" name="" value="1">Child 1 of Child 2 of Three</li>
<li><input type="checkbox" name="" value="1">Child 2 of Child 2 of Three</li>
</ul>
</li>
</ul>
</li>
</ul>

Here is sample jQuery :

$('.nested input[type=checkbox]').click(function () {
$(this).parent().find('li input[type=checkbox]').prop('checked', $(this).is(':checked'));
var sibs = false;
$(this).closest('ul').children('li').each(function () {
if($('input[type=checkbox]', this).is(':checked')) sibs=true;
})
$(this).parents('ul').prev().prop('checked', sibs);
});

View :

  • One
    • Child 1 of One
    • Child 2 of One
    • Child 3 of One
      • Child 1 of Child 3 of One
      • Child 2 of Child 3 of One
  • Two
  • Three
    • Child 1 of Three
    • Child 2 of Three
      • Child 1 of Child 2 of Three
      • Child 2 of Child 2 of Three

Check jsFiddle Example

Jacob Frazier

Based on United States, Jacob Frazier is a skilled JavaScript developer with over 8 years of experience. He is passionate about change and trying new things, both professionally and personally. He loves startups and is extremely proactive.

Recent Posts

Your Complete Guide to the 461 Visa: Building a Life in Australia with Your New Zealand Partner

People usually stumble onto the 461 visa when they realise there’s no simple way to…

17 hours ago

Why Roarbank Is Transforming Everyday Banking in India

In today’s digital era, people look for convenience, transparency, and genuine rewards from their financial…

20 hours ago

Quality with Quantity: Importing LED Lights Can Save You Big Bucks

If you are planning to start a lighting business and looking for a supplier of…

2 days ago

11 Reasons Why Avoiding Plagiarism is Necessary for SEO and content marketing

If you are a copywriter or a content marketer, you will second my statement that…

4 days ago

6 Common Injuries After a Motorcycle Accident

Motorcycle accidents often lead to severe injuries because riders have minimal protection compared to drivers…

1 week ago

How Automation And SEO Can Improve Customer Experience

No business owner starts his or her business with the hope of making losses. Everyone…

1 week ago