Flo*_*ens 5 html jquery updating row html-table
假设你有一个html表:
<table id="data">
<thead>
<tr>
<td>ID</td>
<td>Username</td>
<td>First Name</td>
<td>Last Name</td>
</tr>
</thead>
<tbody>
<?php foreach($arrData as $arrRecord) { ?>
<tr id="tr_<?php echo $arrRecord["id"]; ?>">
<td><?php echo $arrRecord["username"]; ?></td>
<td><?php echo $arrRecord["fname"]; ?></td>
<td><?php echo $arrRecord["lname"]; ?></td>
</tr>
<?php }?>
</tbody>
</table>
Run Code Online (Sandbox Code Playgroud)
你有一个JSON对象:
objUser = {"id":12,"username":"j.smith","fname":"john","lname":"smith"};
Run Code Online (Sandbox Code Playgroud)
并且您希望在相应的表行中更改该记录(假设此表已经有一行id ="tr_12"):
$('#tr_' + objUser.id).find("td").eq(1).html(objUser.id);
$('#tr_' + objUser.id).find("td").eq(2).html(objUser.username);
$('#tr_' + objUser.id).find("td").eq(3).html(objUser.fname);
$('#tr_' + objUser.id).find("td").eq(4).html(objUser.lname);
Run Code Online (Sandbox Code Playgroud)
是否有一种更快/更清晰的方法使用jQuery更新表行,而不是最后显示的代码块?
小智 6
我想你可能会做一些事情
$('#tr_' + objUser.id).find("td").eq(1).html(objUser.id);
$('#tr_' + objUser.id).find("td").eq(2).html(objUser.username);
$('#tr_' + objUser.id).find("td").eq(3).html(objUser.fname);
$('#tr_' + objUser.id).find("td").eq(4).html(objUser.lname);
Run Code Online (Sandbox Code Playgroud)
可能成为:
$this = $('#tr_' + objUser.id).find("td");
$this.eq(1).html(objUser.id);
// And so on
Run Code Online (Sandbox Code Playgroud)
如果已经存在,您可以进行彻底的替换
if ($('#tr_' + objUser.id).length) {
var newHtml = '<td>' + .objUser.username + '</td>'
+ '<td>' + objUser.fname + '</td>'
+ '<td>' + objUser.lname + '</td>';
$('#tr_' + objUser.id).html(newHtml);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19973 次 |
| 最近记录: |