javascript对table的添加,删除行的操作
<body>
<form name="myForm">
<table width="100%" id="tab" name="tab" border="0px" style="text-align:center;">
<tr style="background-color:0099FF;color:black;">
<td>选择</td>
<td>编号</td>
<td>姓名</td>
<td>年龄</td>
<td>地址</td>
<td>操作</td>
<td>操作</td>
</tr>
<tr id="tr1" onmouseOver="onmouseOverMethod(this)" onmouseOut="onmouseOutMethod(this)" onclick="onClickChangeStyle(this)">
<td><input type='hidden'><input type="checkbox" value="11"/></td>
<td>100</td>
<td>张三</td>
<td>15</td>
<td>湖南株洲</td>
<td><a href="#" onclick="addRow()">添加</a></td>
<td><a href="#" onclick="deleteRow(this)">删除</a></td>
</tr>
<tr id="tr2" onmouseOver="onmouseOverMethod(this)" onmouseOut="onmouseOutMethod(this)" onclick="onClickChangeStyle(this)">
<td><input type="checkbox" value="22"/></td>
<td>101</td>
<td>李四</td>
<td>15</td>
<td>湖南长沙</td>
<td><a href="#" onclick="addRow()">添加</a></td>
<td><a href="#" onclick="deleteRow(this)">删除</a></td>
</tr>
<tr id="tr3" onmouseOver="onmouseOverMethod(this)" onmouseOut="onmouseOutMethod(this)" onclick="onClickChangeStyle(this)">
<td><input type="checkbox" value="33"/></td>
<td>102</td>
<td>王五</td>
<td>15</td>
<td>湖南湘潭</td>
<td><a href="#" onclick="addRow()">添加</a></td>
<td><a href="#" onclick="deleteRow(this)">删除</a></td>
</tr>
</table> </form>
</body>
以下是使用javascript对表格的添加行,删除行,进行操作..
具体代码如下:
style样式代码:
<style>
.displayStyle{
background-color:00FFFF;
} .hideStyle{
background-color:#FFFFF;
} .onClickStyle{
background-color:00FF00;
} a{
color:red;
} a:hover{
color:green;
}
</style>
javascript代码:
<script>
var selectRow=null;
//单击时,改变样式;
function onClickChangeStyle(obj){
//获取表格对象;
var tab = document.getElementById("tab"); //获取当前行选择下标;
var currentRowIndex = obj.rowIndex; //获取表格所有行数;
var tablRows = tab.rows.length; //获取表格第一行,第一列的值;
//var firstCellValue = tab.rows[0].cells[0].innerHTML; //获取表格的第一行,第一列的第一个元素的值;
//var firstChildValue = tab.rows[0].cells[0].firstChild.value; //循环表格的所有行;并且选择的当前行,改变背景颜色;
for(var i = 1;i<tablRows;i=i+1){
if(currentRowIndex == i){
//为选中的当前,设置css样式;
selectRow = tab.rows[i];
tab.rows[i].className= "onClickStyle";
}else{
//把没有选中的行的背景样式设置为白色;
tab.rows[i].className= "hideStyle";
}
}
} //鼠标移入时,改变颜色;
function onmouseOverMethod(selectThis){
selectThis.className="displayStyle";
if(selectRow==selectThis){
selectThis.className="onClickStyle";
}
} //鼠标移除时,改变背景颜色;
function onmouseOutMethod(selectThis){
selectThis.className="hideStyle";
if(selectRow == selectThis){
selectThis.className="onClickStyle";
}
} //添加行;
function addRow(){
var tab = document.getElementById('tab');
var rowIndex = tab.rows.length+1; //添加一行;
var tr = tab.insertRow();
tr.onmouseover = tr.className="displayStyle" ;
tr.onmouseout = tr.className="hideStyle" ;
tr.onclick=function (){this.className="onClickChangeStyle(this)";} var td1 = tr.insertCell();
var td2 = tr.insertCell();
var td3 = tr.insertCell();
var td4 = tr.insertCell();
var td5 = tr.insertCell();
var td6 = tr.insertCell();
var td7 = tr.insertCell(); td1.innerHTML = "<input type='hidden'/><input type='checkbox' value = '1'>";
td2.innerHTML = ""+rowIndex;
td3.innerHTML = "测试";
td4.innerHTML = "22";
td5.innerHTML = "无地址";
td6.innerHTML = "<a href='#' onclick='addRow()'>添加</a>";
td7.innerHTML = "<a href='#' onclick='deleteRow(this)'>删除</a>"; //初始化行;
initRows(tab);
} //初始化行,设置序列号;
function initRows(tab){
var tabRows = tab.rows.length;
for(var i = 0;i<tabRows.length;i++){
tab.rows[i].cells[0].firstChild.value=i;
}
} //删除行;(obj代表连接对象)
function deleteRow(obj){
var tab = document.getElementById('tab');
//获取tr对象;
var tr = obj.parentNode.parentNode; if(tab.rows.length>2){
//tr.parentNode,指的是,table对象;移除子节点;
tr.parentNode.removeChild(tr);
}
//重新生成行号;
initRows(document.getElementById('tab'));
}
</script>
javascript对table的添加,删除行的操作的更多相关文章
- ASP.NET给Table动态添加删除行,并且得到控件的值
ASP.NET给Table动态添加控件并且得到控件的值 由于跟老师做一个小的项目,可是我自己又不太懂js,所以一直为动态建立表格并且能动态的取值和赋值感到苦恼.起初在网上找到了一些js资源,解决了动态 ...
- table 排序 添加 删除 等操作
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- jQuery动态对表格Table进行添加或删除行以及修改列值操作
jQuery,不仅可以以少量的代码做很多操作,而且兼容性好(各种浏览器,各种版本). 下面用jQuery动态对表格Table进行添加或删除行以及修改列值操作 1.jQuery代码 <script ...
- 超级简单的jquery操作表格(添加/删除行、添加/删除列)
利用jquery给指定的table添加一行.删除一行 <script language="javascript" src="./jquery.js"> ...
- 关于在SharePoint 2013(2010)中Javascript如何实现批量批准的自定义操作功能?
1.概述: SharePoint 2013(包括SharePoint 2010)提供了很方便的,多选的界面,但是很多操作还是不能批量进行,比如:批准的功能.如果您要解决方案不关心代码,那么请直接联系作 ...
- Javascript Jquery 中的数组定义与操作_子木玲_新浪博客
body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...
- ***Redis hash是一个string类型的field和value的映射表.它的添加、删除操作都是O(1)(平均)。hash特别适合用于存储对象
http://redis.readthedocs.org/en/latest/hash/hset.html HSET HSET key field value (存一个对象的时候key存) 将哈希 ...
- [分享·JavaScript]提取Table中的内容到XML对象
在公司工作的时候,经常需要在前端进行这样的数据提取的操作.而之前的针对每个页面中的Table都重新写原生的JS代码效率太低,且不方便aspx对XML进行处理. 所以,在今天抽时间写了这么一个JS类,见 ...
- 高级复制实验配置添加复制节点操作时报错:ORA-23308: object GP.T does not exist or is invalid
出错原因: 使用高级复制时,在源端启动复制支持,执行语句:REPADMIN@bys1>execute dbms_repcat.generate_replication_support('gp', ...
随机推荐
- iOS小知识点
1.子视图超出frame的部分不显示 view.clipsToBounds 设置为YES; UIScrollview的clipsToBounds默认就是YES 2.UIImage 有一个属性叫s ...
- 常用模块 - shutil模块
一.简介 shutil – Utility functions for copying and archiving files and directory trees.(用于复制和存档文件和目录树的实 ...
- C#程序员快速上手Angular开发
由vue的技术栈快速切换到Angular,对于C#开发人员来说应该不难,二期是一个比较平滑的过渡.所以最近 记录下切换到Angular框架的一些过程,因为NG天然支持Typescript,特别是当项目 ...
- linux系统常用命令统计及shell特殊字符
shell 特殊字符:1.通配符2.管道 1.通配符 1.1星号(*):匹配任意长度 1.2问号(?):匹配一个长度的字符 1.3方括号([......]):匹配其中指定的字符 1.4方括号([-]) ...
- HTML+css3 图片放大效果
<div class="enlarge"> <img src="xx" alt="图片"/> </div> ...
- 从Oracle导出数据并导入到Hive
1.配置源和目标的数据连接 源(oracle): 目标(Hive 2.1.1),需要事先将hive的驱动程序导入HHDI的lib目录中. Hive2.1.1需要的jar包如下:可根据自身情况更换had ...
- 【Hive六】Hive调优小结
Hive调优 Hive调优 Fetch抓取 本地模式 表的优化 小表.大表Join 大表Join大表 MapJoin Group By Count(Distinct) 去重统计 行列过滤 动态分区调整 ...
- MapReduce序列化及分区的java代码示例
概述 序列化(Serialization)是指把结构化对象转化为字节流. 反序列化(Deserialization)是序列化的逆过程.把字节流转为结构化对象. 当要在进程间传递对象或持久化对象的时候, ...
- 为什么我要放弃javaScript数据结构与算法(第五章)—— 链表
这一章你将会学会如何实现和使用链表这种动态的数据结构,这意味着我们可以从中任意添加或移除项,它会按需进行扩张. 本章内容 链表数据结构 向链表添加元素 从链表移除元素 使用 LinkedList 类 ...
- 成都优步uber司机第四组奖励政策
万能的优步成都团队放出了优步司机第四组,一二三组奖励已经骤降,在月末放出第四组车主档,这是要让一切归于平静的节奏么!!! 滴滴快车单单2.5倍,注册地址:http://www.udache.com/如 ...