大家有没有遇到过JQUERY增一行,删一行不灵的问题??????
要求是一个TABLE列表10行,为了保持行数不变,并且是无刷新更新列表行。
在FORM中新增一条记录的同时删除最后一行的记录,保持和数不变,我用的方法:
$("#tableId tr:first").before("<tr><td>asdf</td></tr>");$("#tableId tr:last").remove();function addRow() { var r = workTable.rows.length; if (r< 10) { //添加一行 var newTr = workTable.insertRow(); //添加两列 var newTd0 = newTr.insertCell(); var newTd1 = newTr.insertCell(); //设置列内容和属性 newTd0.innerText =r+1; newTd1.innerHTML = '<input type=text class="txt"/>'; r++; } else { alert("最多添加10条记录!"); return; } } //var row = document.getElementById('workTable').rows.length - 1; function delRow() { var r = workTable.rows.length; if (r> 5) { //workTable.deleteRow(i); document.getElementById('workTable').deleteRow(r-1); r--; } else { alert("剩余5条记录不能删除!"); } }
[解决办法]
程序逻辑没有问题。
但是我个人建议你 先删除后新增,保你百试不爽。
$("#tableId tr:last").remove();
$("#tableId tr:first").before("<tr><td>asdf</td></tr>");
[解决办法]
//也可以用prepend新增行试试:$("#tableId").prepend('<tr><td>asdf</td></tr>');