使用 DOM对象,控制HTML元素 来制作的一个简单的表格
2024-10-21 15:56:31
制作一个表格,显示班级的学生信息。
要求:
1. 鼠标移到不同行上时背景色改为色值为 red,移开鼠标时则恢复为原背景色 white
2. 点击添加按钮,能动态在最后添加一行
3. 点击删除按钮,则删除当前行。
代码如下:
<!DOCTYPE html>
<html>
<head>
<title> new document </title>
<meta http-equiv="Content-Type" content="text/html; charset=gbk"/>
<script type="text/javascript"> window.onload = function(){
//增加行
var btn = document.getElementById("a");
btn.onclick = function(){
var table = document.getElementsByTagName("table")[0];
add(table,"tr");
} //删除行
var a = document.getElementsByTagName("a");
for(var i=0;i<a.length;i++){
a[i].onclick =function(){
var parentTwo = this.parentNode.parentNode;
var parentThree = parentTwo.parentNode;
remove(parentTwo,parentThree);
}
} //鼠标移动修改颜色
var tr = document.getElementsByTagName("tr");
for(var i=0;i<tr.length;i++){
tr[i].onmouseover = function(){
background(this,"red");
};
tr[i].onmouseout = function(){
background(this,"white");
}
} }; //改变颜色的函数
function background(obj,target){
obj.style.background = target;
} //删除的函数
function remove(two,three) {
three.removeChild(two); } //增加行中删除操作的函数
function remover(obj) {
var remove1=document.getElementById('table').childNodes[1];
var remove2=obj.parentNode.parentNode;
remove1.removeChild(remove2);
} //增加行的函数
function add(parent,child) {
var newone=document.createElement("tr");//新增行
newone.onmouseover = function(){
background(this,"red");
};
newone.onmouseout = function(){
background(this,"white");
};
var newone1=document.createElement("td");
newone1.innerHTML="<td />";
newone.appendChild(newone1);
var newone2=document.createElement("td");
newone2.innerHTML="<td />";
newone.appendChild(newone2);
var newone3=document.createElement("td");
newone3.innerHTML="<a href='javascript:;' onclick='remover(this)' >删除</a>";
newone.appendChild(newone3);
document.getElementById("table").childNodes[1].appendChild(newone);
} </script>
</head>
<body>
<table border="1" width="50%" id="table">
<tr>
<th>学号</th>
<th>姓名</th>
<th>操作</th>
</tr> <tr>
<td>xh001</td>
<td>王小明</td>
<td><a href="javascript:;" >删除</a></td> <!--在删除按钮上添加点击事件 -->
</tr> <tr>
<td>xh002</td>
<td>刘小芳</td>
<td><a href="javascript:;" >删除</a></td> <!--在删除按钮上添加点击事件 -->
</tr> </table>
<input id ="a" type="button" value="添加一行" /> <!--在添加按钮上添加点击事件 -->
</body>
</html>
最新文章
- 解决32位plsql连接数据库的问题
- 使用ASP.NET Web API自带的类库实现对CORS的支持(在开发中使用这种方式)(转载)
- hdwiki 在IIS 下的伪静态
- 基于Vivado HLS在zedboard中的Sobel滤波算法实现
- 【BZOJ】【1965】SHUFFLE 洗牌
- Android:调试之LogCat
- bzoj1801
- HTML中的超链接
- mac 重装系统
- 惊喜,重磅福利!免费开源ERP-企业信息化金矿
- ad 线束和网络
- java.lang.NoSuchMethodError: com.opensymphony.xwork2.config.ConfigurationManager.addConfigurationPro
- Git使用二:git与svn的区别与工作流程
- Java - 获取帮助信息
- jquery遍历节点 children(),next(),prev(),siblings()closest() 等一些常用方法...
- 构建一个dbt 数据库适配器
- PHP独立环境搭建细节
- iOS设计模式 - 访问者
- 自动化工具制作PASCAL VOC 数据集
- C# 转换Json类
热门文章
- 试坑不完美的 clip-path (我说的 CSS 的那个)
- Python编程-多进程二
- CentOS 6.5下Redmine的安装配置
- 20145239杜文超《网络对抗》- shellcode注入&;Return-to-libc攻击深入
- 大话设计模式之PHP篇 - 单例模式
- Android电容屏(二):驱动调试分析【转】
- eval 加密 js,把js代码重新编续成新的代码,然后eval运行
- sql server parameter validation of stored procedure
- audiojs 音频插件使用教程
- Spring Boot入门——json数据处理