HTML
<h1>新增学员</h1>
<form class="info" autocomplete="off">
姓名:<input type="text" class="uname" name="uname" />
年龄:<input type="text" class="age" name="age" />
性别:
<select name="gender" class="gender">
<option value="男">男</option>
<option value="女">女</option>
</select>
薪资:<input type="text" class="salary" name="salary" />
就业城市:<select name="city" class="city">
<option value="北京">北京</option>
<option value="上海">上海</option>
<option value="广州">广州</option>
<option value="深圳">深圳</option>
<option value="曹县">曹县</option>
</select>
<button class="add">录入</button>
</form>
<h1>就业榜</h1>
<table>
<thead>
<tr>
<th>学号</th>
<th>姓名</th>
<th>年龄</th>
<th>性别</th>
<th>薪资</th>
<th>就业城市</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<!--
<tr>
<td>1001</td>
<td>欧阳霸天</td>
<td>19</td>
<td>男</td>
<td>15000</td>
<td>上海</td>
<td>
<a href="javascript:">删除</a>
</td>
</tr>
-->
</tbody>
</table>
JS
// 1.先准备一个空数组
const arr = []
// 2.获取录入按钮
const submit = document.querySelector('.info')
// 信息框
const uname = document.querySelector('.uname')
const age = document.querySelector('.age')
const gender = document.querySelector('.gender')
const salary = document.querySelector('.salary')
const city = document.querySelector('.city')
//获取表格体
const tbody = document.querySelector('tbody')
//根据属性选择器获取所有输入框
const items = document.querySelectorAll('[name]')
//提交事件
submit.addEventListener('submit',function(e){
//阻止默认提交事件
e.preventDefault()
//利用循环判断所有输入框是否为空
for (let i = 0; i < items.length; i++) {
if(items[i].value === ''){
return alert('内容不能为空!')
}
}
//创建一个对象
const obj = {
stuId : arr.length + 1,
uname : uname.value,
age : age.value,
gender : gender.value,
salary : salary.value,
city : city.value
}
//往数组里面添加对象
arr.push(obj)
//表单重置,清空数据
this.reset()
//渲染函数
render()
})
//渲染
function render() {
//渲染之前先清空之前的内容
tbody.innerHTML = ''
//循环输入数组当中的数据添加带页面中
for (let i = 0; i < arr.length; i++) {
const tr = document.createElement('tr')
tr.innerHTML = `<td>${arr[i].stuId}</td>
<td>${arr[i].uname}</td>
<td>${arr[i].age}</td>
<td>${arr[i].gender}</td>
<td>${arr[i].salary}</td>
<td>${arr[i].city}</td>
<td>
<a href="javascript:" data-id=${i}>删除</a>
</td>`
//将数据添加到tbody里面
tbody.appendChild(tr)
}
}
//利用事件委托绑定删除事件
tbody.addEventListener('click',function(e){
if(e.target.tagName === 'A'){
// console.log(e.target.dataset.id);
//获取当前数据的id,利用split()函数删除该条数据
arr.splice(e.target.dataset.id,1)
//重新渲染
render()
}
})
1 条评论
作者的情感表达细腻入微,让人在阅读中找到了心灵的慰藉。