描述: 点击添加, 输入框的值添加到下方表格中,点击删除按钮,删除所在行的所有内容
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>表格添加删除</title>
<style>
table{
margin-top: 20px;
text-align: center;
}
</style>
</head>
<script>
window.onload = function(){
var btn = document.getElementsByTagName('button')[0];
var inps = document.getElementsByTagName('input');
var table = document.getElementsByTagName('table')[0];
console.log(btn, inps, table);
btn.onclick = function(){
var name = inps[0].value;
var gender = inps[1].value;
var age = inps[2].value;
var tr = document.createElement('tr');
var len = table.tBodies[0].rows.length;
console.log(len);
tr.appendChild(createElement('td', len + 1));
tr.appendChild(createElement('td', name));
tr.appendChild(createElement('td', gender));
tr.appendChild(createElement('td', age));
tr.appendChild(createElement('td', '<button>删除</button>'))
console.log(tr);
table.tBodies[0].appendChild(tr);
var del = tr.getElementsByTagName('button')[0];
console.log(del);
del.onclick = function(){
console.log(this.parentNode.parentNode);
this.parentNode.parentNode.remove();
}
}
var staticdel = table.getElementsByTagName('button');
console.log(staticdel);
for(var i = 0; i<staticdel.length; i++){
staticdel[i].onclick = function(){
this.parentNode.parentNode.remove();
}
}
function createElement(ele, con){
var newEle = document.createElement(ele);
newEle.innerHTML = con;
return newEle;
}
}
</script>
<body>
<input type="text" placeholder="name" autocomplete="off">
<input type="text" placeholder="gender" autocomplete="off">
<input type="text" placeholder="age" autocomplete="off">
<button>添加</button>
<br>
<table border='1' width="500">
<tHead>
<th>序号</th>
<th>姓名</th>
<th>性别</th>
<th>年龄</th>
<th>操作</th>
</tHead>
<tBody>
<tr>
<td>1</td>
<td>蔡文姬</td>
<td>男</td>
<td>3</td>
<td><button>删除</button></td>
</tr>
<tr>
<td>2</td>
<td>亚索</td>
<td>女</td>
<td>38</td>
<td><button>删除</button></td>
</tr>
<tr>
<td>3</td>
<td>Jack</td>
<td>男</td>
<td>23</td>
<td><button>删除</button></td>
</tr>
</tBody>
</table>
</body>
</html>
描述:全选按钮功能的实现与删除选中的行
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>表格操作</title>
<style>
*{
margin: 0;
padding: 0;
}
.mt12{
margin-top: 12px;
}
button{
outline: none;
border: 1px solid #767676;
border-radius: 3px;
width: 83px;
height: 23px;
cursor: pointer;
}
#wrap{
width: 550px;
height: 550px;
margin: 20px auto;
overflow: hidden;
}
#wrap #inputpanel{
width: 504px;
height: 110px;
border: 1px solid #eeeeee;
border-radius: 5px;
margin:18px 0 30px 8px;
position: relative;
}
#wrap #inputpanel > p{
margin-left: 10px;
font: 16px/30px "微软雅黑";
}
#wrap #inputpanel > p > input{
outline: none;
text-indent: 5px;
}
#wrap #inputpanel > button{
position: absolute;
right: 10px;
bottom: 10px;
}
#wrap #contentpanel{
width: 504px;
height: 100%;
margin-left: 8px;
}
#wrap #contentpanel > button{
float: right;
margin: 18px 10px 0 0;
}
table > tHead > tr > th > input,
table > tBody > tr > td > input{
width: 16px;
height: 16px;
}
table > tBody > tr > td{
height: 30px;
text-align: center;
}
</style>
</head>
<script>
window.onload = function(){
var inputpanel = document.getElementById('inputpanel');
var contentpanel = document.getElementById('contentpanel');
var addbtn = inputpanel.getElementsByTagName('button')[0];
var inps = inputpanel.getElementsByTagName('input');
var table = contentpanel.getElementsByTagName('table')[0];
var allCheck = table.tHead.getElementsByTagName('input')[0];
var check = table.tBodies[0].getElementsByTagName('input');
var delbtn = contentpanel.getElementsByTagName('button')[0];
addbtn.onclick = function(){
var name = inps[0].value;
var gender = inps[1].checked ? inps[1].value : inps[2].value;
var age = inps[3].value;
var tr = document.createElement('tr');
tr.appendChild(createEle('td','<input type ="checkbox">'));
tr.appendChild(createEle('td', name));
tr.appendChild(createEle('td', gender));
tr.appendChild(createEle('td', age));
table.tBodies[0].appendChild(tr);
allCheck.checked = false;
var newCheck = tr.getElementsByTagName('input')[0];
newCheck.onclick = function(){
isCheckAll();
}
}
allCheck.onclick = function(){
for(var i = 0; i < check.length; i++){
check[i].checked = allCheck.checked;
}
}
for(var j = 0; j < check.length; j++){
check[j].onclick = function(){
isCheckAll();
}
}
function isCheckAll(){
for(var z = 0; z < check.length; z++){
if(check[z].checked == false){
allCheck.checked = false;
return;
}
}
allCheck.checked = true;
}
delbtn.onclick = function(){
for(var k = 0; k < check.length; k++){
console.log(check[k].checked);
if(check[k].checked == true){
check[k].parentNode.parentNode.remove();
k--;
}
}
allCheck.checked = false;
}
function createEle(ele, con){
var newEle = document.createElement(ele);
newEle.innerHTML = con;
return newEle;
}
}
</script>
<body>
<div id="wrap">
<div id="inputpanel">
<p class="mt12">
请输入姓名:
<input type="text">
</p>
<p>
<label for="male">
请输入性别:
<input type="radio" name="gender" id="male" value="男" checked>男
</label>
<label for="female">
<input type="radio" name="gender" id="female" value="女">女
</label>
</p>
<p>
请输入年龄:
<input type="text">
</p>
<button>添加到表格</button>
</div>
<div id="contentpanel">
<table border="1" cellspacing = "0">
<tHead>
<tr>
<th width = "100" height = "30">
<input type="checkbox"> 全选
</th>
<th width = "135" height = "30">姓名</th>
<th width = "135" height = "30">性别</th>
<th width = "135" height = "30">年龄</th>
</tr>
</tHead>
<tBody>
<tr>
<td><input type="checkbox"></td>
<td>张无忌</td>
<td>男</td>
<td>26</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>楚雨荨</td>
<td>女</td>
<td>16</td>
</tr>
<tr>
<td><input type="checkbox"></td>
<td>慕容云海</td>
<td>男</td>
<td>20</td>
</tr>
</tBody>
</table>
<button>删除所选行</button>
</div>
</div>
</body>
</html>