JavaScript实现table动态添加、删除行
效果图
点击 + 实现table添加一行,点击 - 删除本行
JSP文件
<%-- Created by IntelliJ IDEA. --%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>JavaScript 动态添加行、删除行</title>
</head>
<body>
<div>
<table id="tab">
<tr>
<td>
<input style="width: 50px" value="1"/>
</td>
<td>
<input style="width: 50px" value="1"/>
</td>
<td>
<button type="button" lay-filter="demo2" class="layui-btn layui-btn-del" lay-filter="demo2" style="margin-left : 10px" onclick="deleteCurrentRow(this)"> - </button>
</td>
</tr>
</table>
<button type="button" class="layui-btn layui-btn-sm" onclick="appendRow()" style="margin-top : 10px"> + </button>
</div>
<%--此处可选择引入自己项目中的jquery.min.js文件--%>
<script type="text/javascript" src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript">
/* 添加行 */
function appendRow(){
var trHTML = '<tr>' +
'<td>' +
'<input style="width: 50px;" value="1"/>' +
'</td>' +
'<td>' +
'<input style="width: 50px;" value="1"/>' +
'</td>' +
'<td>' +
'<button type="button" lay-filter="demo2" style="margin-left : 10px" οnclick="deleteCurrentRow(this)"> - </button>' +
'</td>' +
'</tr>';
$("#tab").append(trHTML);
}
/* 删除行 */
function deleteCurrentRow(obj) {
//var table=document.getElementById("tab");//获取table对象
var tr = obj.parentElement.parentElement;//获取obj所在行的对象
var rowIndex = tr.rowIndex;//获取行号gt`1
//table.deleteRow(rowIndex);// DOM对象删除当前行
$("#tab > tbody > tr:nth-child("+rowIndex+")").remove();// jQuery对象删除当前行
}
</script>
</body>
</html>