JS实现增加/复制/删除行
2010-12-09 10:07
197 查看
转载来自http://bqsongning.blog.163.com/blog/static/11547147320106810569218/
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<trObj.cells.length;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("无可删除的卡号信息!");
}
}
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<trObj.cells.length;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("无可删除的卡号信息!");
}
}
相关文章推荐
- JS增加行复制行删除行的实现代码
- JS实现增加/复制/删除行
- Vue.js实现表格动态增加删除的方法(附源码下载)
- js操作table(增加行,删除行,上移,下移,复制行)
- 基于HTML+CSS+JS实现增加删除修改tab导航特效代码
- js实现对table的增加行和删除行的操作方法
- js动态控制table的tr、td增加及删除的具体实现
- 使用JS实现简单的表格的增加删除全选反选以及高亮效果
- 超有用!原生JS实现增加删除class(addClass,removeClass,toggleClass)
- js动态控制table的tr、td增加及删除的具体实现
- 实现Vector容器的增加、删除、排序(算法函数排序)、遍历、复制操作
- JS实现可编辑的表格,双击可编辑,可以删除行和列,增加行和列,重置,导出表格,也可以上下移动元素
- JS实现动态增加和删除li标签行的实例代码
- Vue.js实现的表格增加删除demo示例
- js实现复制,删除一行div或一行table
- js+jquery实现增加或删除表格中的一行数据
- JS实现table行增加行删除及元素排序
- JS的节点操作:创建、增加、删除、复制、查找
- js实现checkbox批量增加和删除
- JS实现动态增加和删除li标签行