您的当前位置:首页正文

cloneNode实现表格增加删除效果_javascript技巧

2023-12-01 来源:布克知识网

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

小编还为您整理了以下内容,可能对您也有帮助:

js 添加删除按钮所在的行

<script type="text/javascript">
function delRow(obj){ //参数为A标签对象
var row = obj.parentNode.parentNode; //A标签所在行
var tb = row.parentNode; //当前表格
var rowIndex = row.rowIndex; //A标签所在行下标
tb.deleteRow(rowIndex); //删除当前行
}
</script>

<tr><td valign="top" ></td><td valign="top" ><input type="text" /></td><td valign="bottom">
<a href="javascript:void(0)"
onclick="delRow(this)">删除</a></td></tr>

js 添加删除按钮所在的行

<script type="text/javascript">
function delRow(obj){ //参数为A标签对象
var row = obj.parentNode.parentNode; //A标签所在行
var tb = row.parentNode; //当前表格
var rowIndex = row.rowIndex; //A标签所在行下标
tb.deleteRow(rowIndex); //删除当前行
}
</script>

<tr><td valign="top" ></td><td valign="top" ><input type="text" /></td><td valign="bottom">
<a href="javascript:void(0)"
onclick="delRow(this)">删除</a></td></tr>

JS如何添加行和删除行?

<!DOCTYPE html>

<html lang="">

<head>

<meta charset="gb2312">

<meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1, user-scalable=no">

<title>123</title>

<script src="Scripts/jquery.min.js" type="text/javascript"></script>

<script type="text/javascript">

$(document).ready(function(){

var spotMax = 30;

if($('div.spot').size() >= spotMax) {$(obj).hide();}

$("input#add").click(function(){     addSpot(this, spotMax);

});

});

function addSpot(obj, sm) {

$('div#spots').append(

'<div>' +

'<span><input name="shengfen" type="text" /></span>'+

'<span><input name="diqu" type="text" /></span>'+

'<input type="button" class="remove spot01" value="删除行" /></div>')

.find("input.remove").click(function(){

$(this).parent().remove();

$('input#add').show();

});

if($('div.spot').size() >= sm) {$(obj).hide();}

};

</script>

</head>

<body>  

<span><input name="shengfen" type="text" /></span>

<span><input name="diqu" type="text" /></span>

<input type="submit" id="add" name="Submit" value="添加行" >

<div>

<form method="post" name="asdf" id="asdf"><div id="spots"></div></form>

</div>

</body>

</html>

效果这样(样式再自己调)

要加jQuery插件进去

不懂再追问

JS如何添加行和删除行?

<!DOCTYPE html>

<html lang="">

<head>

<meta charset="gb2312">

<meta name="viewport" content="width=device-width, initial-scale=1,maximum-scale=1, user-scalable=no">

<title>123</title>

<script src="Scripts/jquery.min.js" type="text/javascript"></script>

<script type="text/javascript">

$(document).ready(function(){

var spotMax = 30;

if($('div.spot').size() >= spotMax) {$(obj).hide();}

$("input#add").click(function(){     addSpot(this, spotMax);

});

});

function addSpot(obj, sm) {

$('div#spots').append(

'<div>' +

'<span><input name="shengfen" type="text" /></span>'+

'<span><input name="diqu" type="text" /></span>'+

'<input type="button" class="remove spot01" value="删除行" /></div>')

.find("input.remove").click(function(){

$(this).parent().remove();

$('input#add').show();

});

if($('div.spot').size() >= sm) {$(obj).hide();}

};

</script>

</head>

<body>  

<span><input name="shengfen" type="text" /></span>

<span><input name="diqu" type="text" /></span>

<input type="submit" id="add" name="Submit" value="添加行" >

<div>

<form method="post" name="asdf" id="asdf"><div id="spots"></div></form>

</div>

</body>

</html>

效果这样(样式再自己调)

要加jQuery插件进去

不懂再追问

javaScript中table表任意复制一行怎么实现JS

table表任意复制一行的关键是复制哪行,插入到什么位置,如何插入。

第 一个问题复制哪行,通常是点击某一行以确定复制的当前行,核心代码如下:

var e = window.event

if (e.target) targ = e.target

else if (e.srcElement) targ = e.srcElement

if (targ.nodeType == 3)

targ = targ.parentNode

if(targ.tagName=="TD")

第 二个问题插入位置,通常是点击行的下面

pos = targ.parentNode.rowIndex+1

也有可能在表头首行pos =0

再就是表尾"beforeEnd"

第三个问题如何插入,先复制当前行:

var con = targ.parentNode.cloneNode(true);

再进行插入,可以是insertRow,也可以是insertAdjacentElement:

var x=document.getElementById('myTable').insertRow(pos);

document.getElementById('myTable').insertAdjacentElement("beforeEnd",con);

复制之后可对复制行里的内容进行修改调整:

var y=x.insertCell(0).innerHTML=document.getElementById("cell1").value

也可进行删除指定行:

document.getElementById('myTable').removeChild(Obj.parentNode.rows[i]);

在java中,怎样实现点击一个添加按钮,下面的表单自动添加一行

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<HTML>

<HEAD>

<TITLE> New Document </TITLE>

<META NAME="Generator" CONTENT="EditPlus">

<META NAME="Author" CONTENT="">

<META NAME="Keywords" CONTENT="">

<META NAME="Description" CONTENT="">

</HEAD>

<script type="text/javascript">

/*

*增加模板行

*/

function addRow() {

var table = document.getElementById("addTable");

var tbody = document.getElementById("templeteTBody");

var newTBody = tbody.cloneNode(true);

newTBody.style.display="";

var footTBody = document.getElementById("footTbody");

return table.insertBefore(newTBody,footTBody);

}

/*

*删除模板行

*/

function deleteRow(obj) {

var tbody = obj.parentNode.parentNode.parentNode;

var table = document.getElementById("addTable");

table.removeChild(tbody);

}

/**

*向模板中填充值

*/

function setValue(){

var tbody=addRow();

}

</script>

<BODY>

//页面代码

<input type="button" value="增加" onclick="setValue()">

<table id="addTable">

<tbody id="templeteTBody" style="display: none;">

<tr>

<td><input type="button" value="删除" onclick="deleteRow(this)"/></td>

<td>a</td>

<td><input type="text" /></td>

<td>b</td>

<td><input type="text" /></td>

</tr>

</tbody>

<tbody id="footTbody">

</tbody>

</table>

</BODY>

</HTML>

本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。

Top