【发布时间】:2018-07-19 05:15:16
【问题描述】:
我正在尝试访问表格行中的数据。数据可能在<td> 标记中,或者作为输入中的文本,或者作为输入中的复选框或按钮。
作为演示,我有一张小桌子:-
<table border="1">
<tr>
<td dir="ltr" id="test1" class="tLine" nowrap>Column One</td>
<td><input type="checkbox" name="vehicle" value="Car" checked>Check Box.</td>
<td>
<button type="button" class="clicked">Update</button>
</td>
</tr>
</table>
Javascript 是:-
<script>
$(".clicked").click(function() {
var $row = $(this).closest("tr"); // Finds the closest row <tr>
var $tds = $row.find("td"); // Finds all children <td> elements
$.each($tds, function() { // Visits every single <td> element
console.log($(this).text()); // Prints out the text within the <td>
});
console.log($tds[0].tagName); // 'TD'
console.log($tds[1].tagName); // 'TD'
$.each($tds, function(index, value) { // Visits every single <td> element
console.log($tds[index].tagName); // 'TD'
console.log($(this).tagName); // Undefined
console.log($(each).tagName); // Fails
});
});
</script>
第二个循环中的 each 到底是什么,我该如何使用它? 为什么 $(this).tagName 未定义?
获得 TD 元素后,我可以通过查看孩子来检查内容是什么...
我也在研究 javascript/jquery 表选项,如 SlickGred、jsgrid 和 DataTables,但想先了解上面的代码。
【问题讨论】:
标签: javascript jquery html-table