每次在table中添加一行tr页面数据时,序号自动累加,实现了添加时,序号的自动排序。代码如下
var number = 1;
function addhang() {
number++;
var tr="<tr id='moban'>" +
"<td>"+number+"</td>"+
"<td><textarea name='takeclue' id='takeclue"+number+"' style='width: 99%;height: 45px;' οnblur='replace(\"takeclue"+number+"\");'></textarea></td>" +
"<td><textarea name='dealcase' id='dealcase"+number+"' style='width: 99%;height: 45px;' οnblur='replace(\"dealcase"+number+"\");'></textarea></td>" +
"<td><input type='button' value='删除此行' class='enter_btn' οnclick='removehang(this)' /></td></tr>";
$("#table").append(tr);
}
function removehang(obj) {
number--;
var tr = obj.parentNode.parentNode;
tr.parentNode.removeChild(tr);
简单的js,能够解决初始的排序问题,但是有问题,在你添加多行数据时,从中间删除一行或多行,会将出现断层。
用jquery选择器可以完美的解决这一问题。
在删除方法中,加入:
$("#table").find("tr:gt("+$(tr).index()+")").find("td:eq(0)").each(function () {
var num = $(this).html()-1;
$(this).html(num);
});
解释//找到当前点击父节点tr的下标,然后遍历下标比点击大的小标,让其为序号的td的内容减一。实现下标自动排序。