【发布时间】:2015-05-06 11:56:53
【问题描述】:
我有一个 HTML 表,我想遍历它的行并创建一个集合,或者说一个“对象数组”。
例如:
<table id="tbPermission">
<tr>
<th>User ID</th>
<th>User Name</th>
</tr>
<tr>
<td>1</td>
<td>Test1</td>
</tr>
</table>
我想创建一个如下的集合:
var trArray = [];
$('#tbPermission tr').each(function () {
var tdArray = [];
$(this).find('td').each(function () {
// I want to create the array of objects here …
tdArray.push();
});
// Final array
trArray.push(tdArray);
});
数组可能如下所示:
tdArray : {'UserID' : '1', 'UserName' : 'Test1'};
和:
trArray : [
{'UserID' : '1', 'UserName' : 'Test1'},
{'UserID' : '2', 'UserName' : 'Test2'}
]
【问题讨论】:
-
push()本身不会推送任何东西,您需要显式推送一个空对象:push({}) -
那么问题来了,不知道push命令怎么写?你问的是这个吗? tdArray.push($(this).html()) 也许?
-
为什么需要数组?您可以将类分配给 th 和 td,并在需要时找到所需的内容。不确定您要解决什么问题。从本质上讲,我觉得您为自己制造了一个问题,现在却找不到解决方案,而不是一开始就没有制造问题。
-
感谢您的回复,我只想从表格的所有单元格中创建一个对象数组,因为我有 trArray。或者是否有人可以提出任何想法来实现这一目标?
标签: javascript jquery arrays