我有一个表,如下:
<table cellspacing="0" cellpadding="0" border="0" class="layui-table">
<tbody>
<tr data-index="0" class="">
<td data-field="sid" data-content="123456">
<div class="layui-table-cell laytable-cell-1-sid"> 123456 </div>
</td>
<td>
<div></div>
</td>
</tr>
<tr data-index="1" class="">
<td data-field="sid" data-content="100012">
<div class="layui-table-cell laytable-cell-1-sid"> 100012 </div>
</td>
<td>
<div></div>
</td>
</tr>
</tbody>
</table>我可以使用以下脚本获取tbody,但不能获取tr或td
$("document").ready(function(){
var tb = $('.layui-table-main table:eq(0) tbody');
console.log(tb);
var size=tb.find("tr").length;
console.log(size);
});我一直想做的就是得到每个td的值,怎么才能得到它们呢?
发布于 2018-02-01 12:08:58
您可以在tr上使用.find("tr")找到tbody的列表,然后遍历结果以获得每一行。在该循环中,您可以在每个td上使用.find("td")查找row列表。请参阅下面的实现。
$("document").ready(function() {
var tb = $('.layui-table:eq(0) tbody');
var size = tb.find("tr").length;
console.log("Number of rows : " + size);
tb.find("tr").each(function(index, element) {
var colSize = $(element).find('td').length;
console.log(" Number of cols in row " + (index + 1) + " : " + colSize);
$(element).find('td').each(function(index, element) {
var colVal = $(element).text();
console.log(" Value in col " + (index + 1) + " : " + colVal.trim());
});
});
});<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table cellspacing="0" cellpadding="0" border="0" class="layui-table">
<tbody>
<tr data-index="0" class="">
<td data-field="sid" data-content="123456">
<div class="layui-table-cell laytable-cell-1-sid"> 123456 </div>
</td>
<td>
<div></div>
</td>
</tr>
<tr data-index="1" class="">
<td data-field="sid" data-content="100012">
<div class="layui-table-cell laytable-cell-1-sid"> 100012 </div>
</td>
<td>
<div></div>
</td>
</tr>
</tbody>
</table>
https://stackoverflow.com/questions/48554872
复制相似问题