js修改table中Td的值(定义td的单击事件)


Posted in Javascript onJanuary 10, 2013

项目做完,在测试验收时,用户突然提出,可以更改查询结果,便于打印。隐藏工程错误。但是这个时候提要求,比较头痛,后来,想了想还是用前台代码,这样,只要在项目的JS文件中,加入以下几个函数,便可以解决了。

/* 
页面装载时,为每个td增加单击事件,这样,就可以不用对每个页面进行更改。 
*/ 
function ReWritable() 
{ 
var tbmian=document.getElementById("tbmain"); 
for(var i=0;i<tbmain.rows.length;i++) 
{ 
for(var j=0;j<tbmain.rows[i].cells.length;j++) 
{ 
/* 
添加单击事件属性。此处不可使用setAttribute方法。 
*/ 
tbmain.rows[i].cells[j].onclick=AddObjOfText; 
} 
} 
} 
/* 
单击事件,将Td内容更新为一个Div,其中装载了一个Text,用于用户输入新的Td的值, 
一个确定按钮,一个取消按钮,用于保存或取消用户的输入内容。 
一个Hidden,保存用户输入新值前的Td的值,以便用户取消时恢复。 
*/ 
function AddObjOfText() 
{ 
var tdcag=document.getElementById("tdcag"); 
if(tdcag!=null) 
{ 
return; 
} 
var tdid=window.event.srcElement; 
var tdtxt=tdid.innerText; 
var str="<div id='tdcag'><input type='text' id='txtId' value='"+tdtxt+"'>"; 
str+="<input type='button' value='确定' onclick='ChangeTdText()'>"; 
str+="<input type='button' value='取消' onclick='CancelTdChanged()'>"; 
str+="<input type='hidden' id='tdInitValue' value='"+tdtxt+"'>"; 
str+="</div>"; 
tdid.innerHTML=str; 
} 
/* 
取消更改,把Hidden值赋给Td 
*/ 
function CancelTdChanged() 
{ 
var tdInitValue=document.getElementById("tdInitValue"); 
var tdtxt=tdInitValue.value; 
var tdid=document.getElementById("tdcag").parentNode; 
tdid.innerText=tdtxt; 
} 
/* 
保存用户更改,把Text值赋值给Td 
*/ 
function ChangeTdText() 
{ 
var txtId=document.getElementById("txtId"); 
var tdid=document.getElementById("tdcag").parentNode; 
tdid.innerText=txtId.value; 
}

这样,在页面的<body>中,添加onload事件,其值赋为:ReWritable(),如下:
<body onload="ReWritable();"> 
<table id="tbmain" style="width:100%;" border="1"> 
<tr> 
<td>11 
</td> 
<td>12 
</td> 
<td>13 
</td> 
</tr> 
<tr> 
<td>21 
</td> 
<td>22 
</td> 
<td>23 
</td> 
</tr> 
<tr> 
<td>31 
</td> 
<td>32 
</td> 
<td>33 
</td> 
</tr> 
</table> 
</body>

这样,每个Td中,便添加了一个单击事件。
Javascript 相关文章推荐
jquery移动listbox的值原理及代码
May 03 Javascript
Jquery EasyUI的添加,修改,删除,查询等基本操作介绍
Oct 11 Javascript
Js参数值中含有单引号或双引号问题的解决方法
Nov 06 Javascript
jQuery实现仿QQ头像闪烁效果的文字闪动提示代码
Nov 03 Javascript
JavaScript中SetInterval与setTimeout的用法详解
Nov 10 Javascript
json实现添加、遍历与删除属性的方法
Jun 17 Javascript
AngularJS基础 ng-non-bindable 指令详细介绍
Aug 02 Javascript
详解angularjs结合pagination插件实现分页功能
Feb 10 Javascript
详解用vue.js和laravel实现微信支付
Jun 23 Javascript
JS原生数据双向绑定实现代码
Aug 14 Javascript
vue2.0的虚拟DOM渲染思路分析
Aug 09 Javascript
vue中根据时间戳判断对应的时间(今天 昨天 前天)
Dec 20 Javascript
js修改table中Td的值(定义td的双击事件)
Jan 10 #Javascript
javascript之Partial Application学习
Jan 10 #Javascript
javascript之典型高阶函数应用介绍二
Jan 10 #Javascript
javascript之典型高阶函数应用介绍
Jan 10 #Javascript
根据json字符串生成Html的一种方式
Jan 09 #Javascript
web的各种前端打印方法之jquery打印插件jqprint实现网页打印
Jan 09 #Javascript
web的各种前端打印方法之jquery打印插件PrintArea实现网页打印
Jan 09 #Javascript
You might like
php max_execution_time执行时间问题
2011/07/17 PHP
PHP删除非空目录的函数代码小结
2013/02/28 PHP
ThinkPHP独立分组使用的注意事项
2014/11/25 PHP
php实现屏蔽掉黑帽SEO的搜索关键字
2015/04/15 PHP
PHP实现清除wordpress里恶意代码
2015/10/21 PHP
CodeIgniter记录错误日志的方法全面总结
2016/05/17 PHP
PHP实现批量检测网站是否能够正常打开的方法
2016/08/23 PHP
Laravel如何使用Redis共享Session
2018/02/23 PHP
JavaScript定义类和对象的方法
2014/11/26 Javascript
jQuery实现动态添加和删除一个div
2015/08/12 Javascript
给before和after伪元素设置js效果的方法
2015/12/04 Javascript
Angular.js与Bootstrap相结合实现手风琴菜单代码
2016/04/13 Javascript
jQuery插件Flexslider实现图片轮播、图文结合滑动切换效果
2020/04/16 Javascript
Bootstrap.css与layDate日期选择样式起冲突的解决办法
2017/04/07 Javascript
layui文件上传实现代码
2017/05/20 Javascript
webpack学习笔记之代码分割和按需加载的实例详解
2017/07/20 Javascript
利用JS制作万年历的方法
2017/08/16 Javascript
微信小程序 腾讯地图显示偏差问题解决
2019/07/27 Javascript
[02:11]完美世界DOTA2联赛10月28日赛事精彩集锦:来吧展示实力强劲
2020/10/29 DOTA
python实现通过代理服务器访问远程url的方法
2015/04/29 Python
Python的Flask框架标配模板引擎Jinja2的使用教程
2016/07/12 Python
python中reduce()函数的使用方法示例
2017/09/29 Python
使用Python横向合并excel文件的实例
2018/12/11 Python
基于Python在MacOS上安装robotframework-ride
2018/12/28 Python
Python爬虫防封ip的一些技巧
2020/08/06 Python
html标签之Object和EMBED标签详解
2013/07/04 HTML / CSS
意大利制造的男鞋和女鞋:SCAROSSO
2018/03/07 全球购物
澳大利亚巧克力花束和礼品网站:Tastebuds
2019/03/15 全球购物
写一个在SQL Server创建表的SQL语句
2012/03/10 面试题
日语求职信范文
2013/12/17 职场文书
中秋节礼品促销方案
2014/02/02 职场文书
幼儿园中班教师寄语
2014/04/03 职场文书
领导班子对照检查剖析材料
2014/10/13 职场文书
2014年高中教师工作总结
2014/12/19 职场文书
2015年青年志愿者工作总结
2015/05/20 职场文书
风雨哈佛路观后感
2015/06/03 职场文书