<tr>
<td>
<input type="text" name="desc[]">
</td>
<td>
<input type="text" name="duration[]">
</td>
<td>
<input type="text" name="start[]" class="start">
</td>
<td>
<input type="text" name="wait[]">
</td>
<td>
<input type="text" name="end[]">
</td>
<td>
<input type="text" name="phone[]">
</td>
</tr>
I have such multiple rows. I need to fetch the values off all tds on keyup event on the td with input name start(and i also need to avoid values of desc[] and phone[]). Since they are many i cannot go with ids, need help in parent child approach with jquery.
I was able to reach parent tr on keyup event on the above mentioned td but not able to access values of input field in other tds. the jquery code i used
$(document).ready(function(){
$(".start").keyup(function(){
alert($(this).parent().get(-3).tagName);
})
});
This question is related to
jquery
var values = {};
$('td input').each(function(){
values[$(this).attr('name')] = $(this).val();
}
Haven't tested, but that should do it...
Maybe this will help.
var inputVal = $(this).closest('tr').find("td:eq(x) input").val();
I'm having a hard time figuring out what exactly you're looking for here, so hope I'm not way off base.
I'm assuming what you mean is that when a keyup event occurs on the input with class "start" you want to get the values of all the inputs in neighbouring <td>s:
$('.start').keyup(function() {
var otherInputs = $(this).parents('td').siblings().find('input');
for(var i = 0; i < otherInputs.length; i++) {
alert($(otherInputs[i]).val());
}
return false;
});
Source: Stackoverflow.com