您可以在下面使用querySelectorAll
的例子选择此小区内的所有li
秒。此外,它的无效HTML无li
s没有包装在ul
或ol
。
小提琴:http://jsfiddle.net/AtheistP3ace/ukgfekey/
JS:
var table = document.getElementById("tbl_calendar");
for (var i = 0, row; row = table.rows[i]; i++) {
for (var j = 0, col; col = row.cells[j]; j++) {
var li = col.querySelectorAll('li');
for (var index = 0; index < li.length; index++) {
alert(li[index].id + ': ' + li[index].textContent);
}
}
}
HTML:
<table id="tbl_calendar">
<tr>
<td>
<ul>
<li id='1'>Curly</li>
<br />
<li id='2'>Larry</li>
<br />
<li id='3'>Moe</li>
</ul>
</td>
</tr>
</table>
您还标记的jQuery所以在尽最大努力做到充分解释。
小提琴:http://jsfiddle.net/AtheistP3ace/ukgfekey/1/
变种表=的document.getElementById( “tbl_calendar”);
for (var i = 0, row; row = table.rows[i]; i++) {
for (var j = 0, col; col = row.cells[j]; j++) {
var li = $(col).find('li');
for (var index = 0; index < li.length; index++) {
alert($(li[index]).attr('id') + ': ' + $(li[index]).text());
}
}
}
而且正如评论中所提到的那样,您不需要所有这些循环。如果你只是想从一个表中的所有li
是你可以这样做:
小提琴:http://jsfiddle.net/AtheistP3ace/ukgfekey/2/
var table = document.getElementById("tbl_calendar");
var li, lis = table.querySelectorAll('tr td li');
for (var index = 0; index < lis.length; index++) {
li = lis[index];
alert(li.id + ': ' + li.textContent);
}
好奇你为什么有一个jQuery标签,但你没有在问题中使用它。 – 2015-12-02 16:52:25