Thursday, April 21, 2011

jQuery: determine if a <li> contains a <ul>

I have some HTML code that contains nested <ul> elements and I need to add a class 'parent' to each <li> element that contains a child <ul>. There could be more than one element contained directly withing a single <li> (e.g <li><a>...</a><span>...</span><ul>...</ul></li>).

All I need is to determine if a particular <li> contains a <ul> as a child element.

How would I go about this?

From stackoverflow
  • Changed the answer after re-reading the question:

    $("li:has(ul)").addClass("parent");
    
  • This will accomplish what you need:

    $('li:has(> ul)').addClass('parent');
    
    deverop : Wow, Thanks! Works perfect!
  • Use the has selector.

    $("li:has(ul)").addClass("parent")
    

0 comments:

Post a Comment