Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Jquery Each Input Within DIV (Has A Table)

Im currently trying to get all input elements from a DIV.

$("[required]").each(function() {

});

I have this code which returns every element with a required attribute.

I know within the function of that each() I can use each item like:

$(this)

So I get the div ID's shown below, and try to get all the inputs from it via:

var id = $(this).attr('id');
console.log("### " + id);
console.log($("#" + id + " > :input").length);

Which returns 0 when I have 4 in put elements within that DIV (also theres a table in the div).

What I would ideally like to do is for each input element within my div, print its ID.

UPDATED

<div id="contactAddress" required="true">

 <td>Addres line 1:</td>
 <td colspan="2">
 <input type="text"/>
 </td>
 <td>Addres line 2:</td>
 <td colspan="2">
 <input type="text" />
 </td>
 </tr>
</div>

console.log($(this).html());

Shows nothign but if i add anythign outsire the or like below...

 <div id="contactAddress" required="true">
 <input type="text" />

And run console.log($(this).html()); It shows it put not the table?

Any ideas im using Jquery Mobile

like image 386
Lemex Avatar asked Dec 27 '22 21:12

Lemex


1 Answers

This below will find all inputs inside the div element. It will then leave a log of the id of this element.

$("div > input").each(function() {
  console.log( $(this).attr("id") );
});

if you need the div id containing the inputs you could use .parent()

$("input").each(function() {
  console.log( $(this).parent().attr("id") );
});
like image 118
Undefined Avatar answered Dec 29 '22 10:12

Undefined