这篇文章介绍了 JS 增加行复制行删除行的实现代码,有需要的朋友可以参考一下
Javascript 是一种由 Netscape 的 LiveScript 发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言,比如 Perl,遗留的速度问题,为客户提供更流畅的浏览效果。
- var customerInfoMethod ={
- //复制增加行
- copyrow:function(obj,id)
- {
- var rowIndex=obj.parentNode.parentNode.rowIndex;
- var resrow=document.getElementById(id);
- rowIndex--;
- var newRow=resrow.cloneNode(true);//document.createElement("tr");
- var parent = resrow.parentNode;
- if(parent.lastChild == resrow){
- //如果targetElement是parent最后一个子元素,插入newElement
- parent.appendChild(newRow);
- }else{
- //如果不是,插入到targetElement下一个兄弟节点的前面
- parent.insertBefore(newRow, resrow.nextSibling);
- }
- //newRow.innerhtml=resrow.innerHTML;
- var selectObj = newRow.getElementsByTagName("select");
- for(var a=0;a<selectObj.length;a++){
- selectObj[a].options[0].selected=true;
- }
- var inputObj = newRow.getElementsByTagName("input");
- inputObj[0].style.display="";
- inputObj[1].style.display="none";
- },
- //复制增加行
- copyrowUpdate:function(obj,id)
- {
- var rowIndex=obj.parentNode.parentNode.rowIndex;
- var resrow=document.getElementById(id);
- rowIndex--;
- var newRow=resrow.cloneNode(true);//document.createElement("tr");
- var parent = resrow.parentNode;
- if(parent.lastChild == resrow){
- //如果targetElement是parent最后一个子元素,插入newElement
- parent.appendChild(newRow);
- }else{
- //如果不是,插入到targetElement下一个兄弟节点的前面
- parent.insertBefore(newRow, resrow.nextSibling);
- }
- //newRow.innerHTML=resrow.innerHTML;
- var selectObj = newRow.getElementsByTagName("select");
- for(var a=0;a<selectObj.length;a++){
- selectObj[a].options[0].selected=true;
- }
- var inputObj = newRow.getElementsByTagName("input");
- for(var i=0;i<inputObj.length-2;i++){
- inputObj[i].value="0";
- }
- inputObj[inputObj.length-2].style.display="";
- inputObj[inputObj.length-1].style.display="none";
- },
- //删除行
- deleteRow:function(rootId,obj) {
- var rootTable = $(rootId);
- rootTable.deleteRow(obj.parentNode.parentNode.rowIndex);
- }
- }
/**
增加行 fanjf
*/
function addRow(tableId,trId){
var tableObj = document.getElementById(tableId);
var trObj = document.getElementById(trId);
//var trIndex = trObj.rowIndex+1;
var rows = tableObj.rows.length;
var cell = "";
var tr = tableObj.insertRow(rows);
for(i=0;i
cell= tableObj.rows(rows).insertCell(i);
cell.innerText= trObj.cells(i).innerText;
cell.className= trObj.cells(i).className;
cell.innerHTML= trObj.cells(i).innerHTML;
}
}
/**
删除行 fanjf
*/
function deleteRow(tableId,trId){
var tableObj = document.getElementById(tableId);
var trObj = document.getElementById(trId);
//var trIndex = trObj.rowIndex;// 复制 tr 的行号
var rows = tableObj.rows.length;
if(rows>0){
tableObj.deleteRow(rows-1);
}else{
alert("无可删除的卡号信息!");
}
}
来源: