有没有大神能提供一下,删除单元行,数字会自动按顺序排列的思路?例如我删掉第三行,后面的数字由4 5变成3 4
xh001
xh002
xh003
xh004
xh005
我现在删掉第三行,后面两行自动变成
xh003
xh004
还有一个问题,如果数据多了,有两位数 三位数的人数,好像更难了。
不一定要把代码写出来,提供具体的思路就行。
xh001
xh002
xh003
xh004
xh005
我现在删掉第三行,后面两行自动变成
xh003
xh004
还有一个问题,如果数据多了,有两位数 三位数的人数,好像更难了。
不一定要把代码写出来,提供具体的思路就行。
2018-08-04
function del(x){
var table=document.getElementById("table");
var tr=x.parentNode.parentNode;
var message=confirm("确认删除?");
if(message==true){
tr.parentNode.removeChild(tr);
}
/*每点一次删除,tr的第一第二个子节点都会变成新值*/
/*即 学号和姓名随着每一次删除,会变成"xh"+当前tr在table的索引值,于是就能自动保持连续的1234了*/
var u=document.getElementsByTagName("tr");
for(var i=1;i<u.length;i++){
var num=table.indexOf(u[i])
u[i]=new Array();
u[i][0]=u[i].childNodes[0];
u[i][1]=u[i].childNodes[1];
u[i][0].innerHTML="xh00"+num;
u[i][1].innerHTML="第"+num+"个学生";
}
}我在删除的函数里加了点东西,每次删除都能更新一下学号和姓名,这样写个人感觉逻辑没有问题,但是却没有用。
下面,我会把整个代码发出来。
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>table</title>
<script type="text/javascript">
window.onLoad=function(){
var tr=document.getElementById("table").childNodes;
for(var i=0;i<tr.length;i++){
onMounse(tr[i]);
}
}
function onMounse(x){
x.onmouseover=function(){
x.style.backgroundColor="#f2f2f2";
}
x.onmouseout=function(){
x.style.backgroundColor="#fff";
}
}
function add(){
var num=document.getElementById("table").childNodes.length+1
var x=document.createElement("tr");
var y=document.createElement("td");
var z=document.createElement("td");
var m=document.createElement("td");
y.innerHTML="xh00"+num;
z.innerHTML="第"+num+"个学生";
m.innerHTML="<a href='javascript:;' onclick='del(this)'>删除</a>";
x.align="center";
x.appendChild(y);
x.appendChild(z);
x.appendChild(m);
document.getElementById("table").appendChild(x)
}
function del(x){
var table=document.getElementById("table");
var tr=x.parentNode.parentNode;
var message=confirm("确认删除?");
if(message==true){
tr.parentNode.removeChild(tr);
}
/*每点一次删除,tr的第一第二个子节点都会变成新值*/
/*即 学号和姓名随着每一次删除,会变成"xh"+当前tr的索引值,于是就能自动保持连续的1234了*/
var u=document.getElementsByTagName("tr");
for(var i=1;i<u.length;i++){
var num=table.indexOf(u[i])
u[i]=new Array();
u[i][0]=u[i].childNodes[0];
u[i][1]=u[i].childNodes[1];
u[i][0].innerHTML="xh00"+num;
u[i][1].innerHTML="第"+num+"个学生";
}
}
</script>
</head>
<body>
<table border="1" width="50%" id="table">
<tr align="center">
<td>学号</td>
<td>姓名</td>
<td>操作</td>
<tr align="center">
<td>xh001</td>
<td>王小明</td>
<td><a href="javascript:;" onclick="del(this)">删除</a>
<tr align="center">
<td>xh002</td>
<td>刘小芳</td>
<td><a href="javascript:;" onclick="del(this)">删除</a>
</table>
<form>
<input type="button" value="添加一行" onclick="add()">
</form>
</body>
</html>举报