Maurits Bouman
Maurits Bouman

Reputation: 237

Select id of ul inside div

I need a variable that selects the id of the ul with class="cd-faq-group".

The ul is inside a div with id="items" and class="cd-faq-items".

Right now I have the following code inside a js function:

However, this doesn't seem to be working.

function searchBar() {
    var input, filter, ul, li, a, i;
    var ids = $('div.items').find("ul.cd-faq-group").attr("id");
}

And yes, I am a noob at coding in general.

Upvotes: 0

Views: 754

Answers (2)

Alberto Moro
Alberto Moro

Reputation: 1013

If you have only one ul in div you can use:

function searchBar() {
    var input, filter, ul, li, a, i;
    var ids = $("#items").find("ul.cd-faq-group").attr("id");
}

ELSE

$(document).ready(function() {
  searchBar();
});


function searchBar() {
  var input, filter, ul, li, a, i;
  var uls = $("#items").find("ul.cd-faq-group");
  $.each(uls, function(i, item) {
    var id = item.id;
    console.log(id);
  });
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="items" class="cd-faq-items">
  <ul id="1" class="cd-faq-group">
  </ul>
  <ul id="2" class="cd-faq-group">
  </ul>
  <ul id="3" class="cd-faq-group">
  </ul>
</div>

Upvotes: 1

Sooriya Dasanayake
Sooriya Dasanayake

Reputation: 1156

Try this...

var ids = $('div#items').find('ul.cd-faq-group').attr('id');
console.log(ids)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="items"  class="cd-faq-items">
<ul id="1" class="cd-faq-group">

</ul>
</div>

Multiple ul

$("div#items ul").on("click", function(){
  console.log($(this).attr('id'));

});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="items"  class="cd-faq-items">
<ul id="1" class="cd-faq-group">1</ul>
<ul id="2" class="cd-faq-group">2</ul>
<ul id="3" class="cd-faq-group">3</ul>
</div>

Upvotes: 1

Related Questions