每天一个JS 小demo之个人信息添加。主要知识点:DOM操作中的表格操作,节点操作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了每天一个JS 小demo之个人信息添加。主要知识点:DOM操作中的表格操作,节点操作相关的知识,希望对你有一定的参考价值。
以下是简易效果:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style type="text/css">
table {
width: 555px;
text-align: center;
}
table a {
text-decoration: none;
}
</style>
<script type="text/javascript">
window.onload = function(){
var formElements = document.querySelector(‘form‘);
var inputElements = document.querySelectorAll(‘input‘);
var tableElements = document.querySelector(‘table‘);
var tbodyElements = tableElements.querySelector(‘tbody‘);
var selectElements = document.querySelector(‘div select‘);
var checkAll = document.querySelector(‘thead input‘);
var delAll = document.querySelector(‘thead a‘);
var nub = 0;
inputElements[2].onclick = function(){
for(var i = 0; i < 2; i++){
if(inputElements[i].value==""||selectElements.value==""){
alert(‘请输入完整信息‘);
inputElements[i].focus();
return;
}
}
var trElements = document.createElement(‘tr‘);
trElements.innerHTML = ‘<td><input type="checkbox"></td><td>‘+(nub+1)+‘</td><td>‘+inputElements[0].value+‘</td><td>‘+inputElements[1].value+‘</td><td>‘+selectElements.value+‘</td><td><a href="javascript:;">上移</a> <a href="javascript:;">下移</a> <a href="javascript:;">删除</a></td>‘;
var aElements = trElements.querySelectorAll(‘a‘);
aElements[0].onclick = function(){
if(trElements.previousElementSibling){
tbodyElements.insertBefore(trElements,trElements.previousElementSibling);
} else{
alert("这已经是第一个了");
}
};
aElements[1].onclick = function(){
if(trElements.nextElementSibling){
tbodyElements.insertBefore(trElements.nextElementSibling,trElements);
} else{
alert("这已经是最后一个了");
}
};
aElements[2].onclick = function(){
tbodyElements.removeChild(trElements);
tellCheckAll();
};
tbodyElements.appendChild(trElements);
checkAll.checked = false;
for(var i = 0; i < 2; i++){
inputElements[i].value = "";
}
selectElements.value = "";
nub++;
var checkboxElements = tbodyElements.getElementsByTagName(‘input‘);
checkAll.onchange = function(){
for(var i = 0; i < checkboxElements.length; i++){
checkboxElements[i].checked = this.checked;
}
};
delAll.onclick = function(){
for(var i = 0; i < checkboxElements.length; i++){
if(checkboxElements[i].checked){
tbodyElements.removeChild(checkboxElements[i].parentNode.parentNode);
i--;
}
}
checkAll.checked = false;
};
for(var i = 0; i < checkboxElements.length; i++){
checkboxElements[i].onchange = function(){
tellCheckAll();
};
}
function tellCheckAll(){
var isCheck = true;
for(var i = 0; i < checkboxElements.length; i++){
if(!checkboxElements[i].checked){
isCheck = false;
break;
}
}
checkAll.checked = isCheck;
};
};
};
</script>
</head>
<body>
<form>
<div>
<label for="">姓名<input type="text"></label>
<label for="">年龄<input type="text"></label>
<label for="">性别
<select id="">
<option value=""></option>
<option value="女">女</option>
<option value="男">男</option>
<option value="保密">保密</option>
</select>
</label>
<input type="button" value="添加">
</div>
<table border="1">
<thead>
<tr>
<th>
<input type="checkbox">
<a href="javascript:;">删除所选</a>
</th>
<th>ID</th>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
<th>操作</th>
</tr>
</thead>
<tbody>
</tbody>
</table>
</form>
</body>
</html>
以上是关于每天一个JS 小demo之个人信息添加。主要知识点:DOM操作中的表格操作,节点操作的主要内容,如果未能解决你的问题,请参考以下文章
每天一个JS 小demo之表单排序。主要知识点:DOM中的表单操作,节点操作
每天一个JS 小demo之通过事件委托实现菜单展开及选中特效。主要知识点:事件
每天一个JS 小demo之通过键盘方向键操作图片上下左右无缝切换。主要知识点:事件
每天一个JS 小demo之日历制作。主要知识点:日期函数和对于函数封装的灵活运用