У меня есть 3 таблицы на странице и написал следующее, чтобы сделать что-то со всеми элементами.
$('td').each(function(){
//do something
});
Но он работает только для первой таблицы. Как это исправить?
У меня есть 3 таблицы на странице и написал следующее, чтобы сделать что-то со всеми элементами.
$('td').each(function(){
//do something
});
Но он работает только для первой таблицы. Как это исправить?
Может быть что-то не так с вашими пометками
$('td').each(function(idx){
document.write("<br/>idx: " + idx)
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr><td></td><td></td></tr>
</table>
<table>
<tr><td></td><td></td></tr>
</table>
Попробуйте это ..
<table>
<tr>
<td>a</td>
<td>b</td>
<td>c</td></tr>
</table>
<table>
<tr><td>d</td>
<td>e</td>
<td>f</td></tr>
</table>
<table>
<tr> <td>g</td>
<td>h</td>
<td>i</td></tr>
</table>
Js код
$(function(){
$('table tr td').each(function(i, e){
//do something here
})
})
Попробуйте .find():
var td = $('table').find('td');
td.each(function(k,v){
alert(k+" - "+v);
});
<table>
<tr>
<td></td>
<td></td>
</tr>
</table>
<table>
<tr>
<td></td>
<td></td>
</tr>
</table>
попробовать с '$ ('стол' тд) each' –
Как вы знаете, это не работает.? – insanebits
делает '$ ('td'). Length' дает вам то, что вы ожидаете? – atmd