JS操作table问题

lvoers 2012-07-08 09:11:28
当我删除 TableID.deleteRow(rowIndex); 删除行的之后。
该如何更新其他行的rowIndex号?

//初始化行,设置序列号;
function initRows(tab) {
for (var i = 0; i < tab.rows.length; i++) {
tab.rows[i].rowIndex = i; //这里报错了。 提示 对象不支持此操作
}
}

请问该如何重新初始化所有的行号?
...全文
103 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lvoers 2012-07-08
  • 打赏
  • 举报
回复
谢谢。二楼。确实会自动变化索引。我再检查代码
lvoers 2012-07-08
  • 打赏
  • 举报
回复
我的行都是使用table.insertRow(-1);所增行的
lvoers 2012-07-08
  • 打赏
  • 举报
回复
确实会变。可是不知道为什么。我用JS产生的行。然后我再移除之后。rowIndex不自动更新。
乌镇程序员 2012-07-08
  • 打赏
  • 举报
回复
rowIndex是只读属性,删除行以后不需要重新“初始化”,浏览器会自动重新计算各TableRow对象的rowIndex值。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script type="text/javascript">
window.onload = function() {
var t = document.getElementsByTagName('table')[0];
t.deleteRow(1);
alert(t.rows[1].cells[0].innerHTML);
}
</script>
</head>

<body>
<table width="500" border="1">
<tr>
<td>R1</td>
</tr>
<tr>
<td>R2</td>
</tr>
<tr>
<td>R3</td>
</tr>
</table>
</body>
</html>

87,921

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧