添加 移除 表格的例子

为 #employeetable 的所有的 a 节点添加 Onclick 响应函数:
* 1. 弹出确认对话框: 确定要删除 xx 的信息吗? xx 为当前 a 节点所在的 td 所在的 tr 的
* 第一个 td 子节点的文本值, 且要去除前后空格
* 2. 若点击 "确认" , 则删除 a 节点的所在的行

注意:
* 1. a 节点是一个超级链接, 可以在其 onclick 事件中通过返回 false, 来取消默认行为
* 2. tr 的直接父节点为 tbody, 而不是 table
* 3. 可以把去除前后空格的代码写成一个 trim(str) 函数.

为 #addEmpButton 添加 onclick 响应函数:
* 1. 获取 #name, #email, #salary 的文本框的值
* 2. 利用 1 获取的文本值创建 3 个 td 节点, 在创建一个 tr 节点. 并把以上的 3 个 td
* 节点价位 tr 节点的子节点
<tr>
<td>Tom</td>
<td>[email protected]</td>
<td>5000</td>
</tr>
* 3. 在创建一个 td 节点: <td><a href="deleteEmp?id=xxx">Delete</a></td>
* 4. 把 3 创建的 td 也加为 tr 的子节点.
* 5. 再把 tr 加为 #employeetable 的 tbody 子节点的子节点.
* 6. 为新创建的 tr 的 a 子节点添加 Onclick 响应函数, 使其也具备删除的功能.

function removeTr(aNoe){

var trNode = aNoe.parentNode.parentNode;

var textContent = trNode.getElementsByTagName("td")[0]
.firstChild.nodeValue;
textContent = trim(textContent);

var flag = confirm("确定要删除" + textContent + "的信息吗?");
if(flag){
trNode.parentNode.removeChild(trNode);
}

return false;
}
1. a 节点是一个超级链接, 可以在其 onclick 事件中通过返回 false, 来取消默认行为
var aNodes = document.getElementById("employeetable")
.getElementsByTagName("a");
for(var i = 0; i < aNodes.length; i++){
aNodes[i].onclick = function(){
removeTr(this);
return false;
}
}

document.getElementById("addEmpButton").onclick = function(){

var nameVal = document.getElementById("name").value;
var emailVal = document.getElementById("email").value;
var salaryVal = document.getElementById("salary").value;

var nameTd = document.createElement("td");
nameTd.appendChild(document.createTextNode(nameVal));

var emailTd = document.createElement("td");
emailTd.appendChild(document.createTextNode(emailVal));

var salaryTd = document.createElement("td");
salaryTd.appendChild(document.createTextNode(salaryVal));

var tr = document.createElement("tr");

tr.appendChild(nameTd);
tr.appendChild(emailTd);
tr.appendChild(salaryTd);

alert("aa");

//<td><a href="deleteEmp?id=xxx">Delete</a></td>
var aNode = document.createElement("a");
aNode.href = "deleteEmp?id=xxx";
aNode.appendChild(document.createTextNode("Delete"));
var aTd = document.createElement("td");
aTd.appendChild(aNode);

tr.appendChild(aTd);

aNode.onclick = function(){
removeTr(this);
return false;
}

document.getElementById("employeetable")
.getElementsByTagName("tbody")[0]
.appendChild(tr);

//value: 用于获取 html 表单元素的值
//alert(this.value); //
//nodeValue: 用于获取文本节点的文本值.
//alert(this.nodeValue); //null

}

function trim(str){
var reg = /^\s*|\s*$/g;
return str.replace(reg, "");
}

时间: 2024-11-08 09:36:38

添加 移除 表格的例子的相关文章

a标签添加移除事件及开启禁用事件

一.添加移除点击事件 <script type="text/javascript" src="jquery.min.js"></script><script type="text/javascript">$(function(){ $(".b").click(function(){  $(this).removeAttr("onclick");  setTimeout(f

jquery练习事件的添加移除

<!doctype html> <html> <head> <meta charset="gb2312"> <title>nuzhang练习事件的添加移除-title</title> <script src="js/jquery-1.11.1.min.js"></script> <script> $(document).ready(function(e) {

无法执行添加/移除操作,因为代码元素 是只读的

刚刚学习用MFC编写嵌入式软件,各种问题接踵而来啊,在资源选项卡里面新建一个dialog后拖进去一个button按钮,想要添加这个空间的时间相应却怎么也不成功.会出现 提示框 “无法执行添加/移除操作,因为代码元素**是只读的”.根据提示去查看对应的.cpp和.h文件,发现并没有只读属性,没办法,求助于网络,发现这个问题还是挺普遍的,参考这篇文章后,保存现有工程后,在目录里面删掉.ncb文件后重新打开解决方案,问题解决. 另外还碰到一个情况,就是在属性栏点击“控件事件”后列表为空,不应该啊,比对

javascript 利用 - 枚举思想 - 添加地名的一个小例子

利用枚举思想来添加地名,主要功能是:判断点击a标签(即当前的地名)如果在ul的li不存在的话那么就添加,有则不添加,而且还提供了相应的排序功能... HTML代码: <div id="china"> <a href="javascript:;">广州</a> <a href="javascript:;">深圳</a> <a href="javascript:;"

JS添加/移除事件

事件的传播方式 <div id="father"> <div id="son"></div> </div> <script> //事件传播有两种方式 //自下而上 从子级到父级是 事件冒泡 //自上而下 从父级到子级是 事件捕获 var son = document.getElementById("son"); var father = document.getElementById(&

电力项目十七--数据字典首页JS添加和删除表格

知识点:jQuery是一个JavaScript函数库. JS代码: function insertRows(){ //获取表格对象 var tb1 = $("#dictTbl"); var tempRow = $("#dictTbl tr").size();//获取表格的行数 var $tdNum = $("<td align='center'></td>"); $tdNum.html(tempRow); var $tdN

ligerui_实际项目_003:form中添加数据,表格(grid)里面显示,最后将表格(grid)里的数据提交到servlet

实现效果: "Form"中填写数据,向本页"Grid"中添加数据,转换成Json数据提交,计算总和,Grid文本框可编辑,排序 图片效果: 总结: //display属性: editor:grid表格可以编辑其类容: //select类型:select+render实现选择填充效果 editor:{ type:"select", data:[{id:"1",text:"品牌一"},{id:"2&q

实现当鼠标移到表格上时显示这一格的全部内容

想实现这样一个功能,就是在一个表格中,由于很多字过多,所以用文字溢出的方法处理了,但是这样就无法看到表格中具体的内容呢.想实现当鼠标移上去的时候可以显示这一行被隐藏的内容.当然这个网上有很多插件,但是我没有用,还是自己写了一个. css部分 <style> #showbox { width: 150px; min-height: 50px; font: 100 14px/1 "微软雅黑"; border: 1px solid #3c8dbc; display: none;

C#/AutoCAD 2018/ObjectArx/二次开发添加圆对象的的例子(五)

1.创建一个图形对象的步骤如下见上一篇博客(三)2.添加删除实体的工具函数见上一篇博客(四) 3.添加圆的例子(完整源代码请加云幽学院免费课yunyun.ke.qq.com)   [CommandMethod("MKCircle")]        public void MKCircle()        {            //(1)获取当前活动图形数据库            Database db = HostApplicationServices.WorkingData