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 相关文章推荐
JavaScript弹出窗口方法汇总
Aug 12 Javascript
node.js中的fs.chownSync方法使用说明
Dec 16 Javascript
Flow之一个新的Javascript静态类型检查器
Dec 21 Javascript
使用jQuery的easydrag插件实现可拖动的DIV弹出框
Feb 19 Javascript
JavaScript对象数组排序实例方法浅析
Jun 15 Javascript
AngularJS控制器之间的数据共享及通信详解
Aug 01 Javascript
简单实现node.js图片上传
Dec 18 Javascript
脚本div实现拖放功能(两种)
Feb 13 Javascript
原生JS实现幻灯片
Feb 22 Javascript
详解vue服务端渲染(SSR)初探
Jun 19 Javascript
Vue通过配置WebSocket并实现群聊功能
Dec 31 Javascript
OpenLayers3实现对地图的基本操作
Sep 28 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
造势之举?韩国总统候选人发布《星际争霸》地图
2017/04/22 星际争霸
BBS(php &amp; mysql)完整版(四)
2006/10/09 PHP
WordPress过滤垃圾评论的几种主要方法小结
2016/07/11 PHP
PHP fclose函数用法总结
2019/02/15 PHP
用javascript自动显示最后更新时间
2007/03/15 Javascript
jQuery 源码分析笔记(7) Queue
2011/06/19 Javascript
Extjs grid添加一个图片状态或者按钮的方法
2014/04/03 Javascript
jQuery中Ajax的get、post等方法详解
2015/01/20 Javascript
常见的javascript跨域通信方法
2015/12/31 Javascript
jquery设置表单元素为不可用的简单代码
2016/07/04 Javascript
用jquery获取自定义的标签属性的值简单实例
2016/09/17 Javascript
微信小程序开发探究
2016/12/27 Javascript
JS面向对象编程实现的Tab选项卡案例详解
2020/03/03 Javascript
vue中el-input绑定键盘按键(按键修饰符)
2020/07/22 Javascript
Python三元运算实现方法
2015/01/12 Python
为Python的web框架编写MVC配置来使其运行的教程
2015/04/30 Python
Python实现二叉树结构与进行二叉树遍历的方法详解
2016/05/24 Python
Python中使用haystack实现django全文检索搜索引擎功能
2017/08/26 Python
python框架中flask知识点总结
2018/08/17 Python
Python实现的KMeans聚类算法实例分析
2018/12/29 Python
详解python中@的用法
2019/03/27 Python
springboot配置文件抽离 git管理统 配置中心详解
2019/09/02 Python
Python 利用邮件系统完成远程控制电脑的实现(关机、重启等)
2019/11/19 Python
Python 剪绳子的多种思路实现(动态规划和贪心)
2020/02/24 Python
python 画条形图(柱状图)实例
2020/04/24 Python
python os模块常用的29种方法使用详解
2020/06/02 Python
python 爬虫爬取京东ps4售卖情况
2020/12/18 Python
css3实现针线缝合效果(图解步骤)
2013/02/04 HTML / CSS
幼儿园春游活动方案
2014/01/19 职场文书
《长江之歌》教学反思
2014/04/17 职场文书
煤矿安全生产月活动总结
2014/07/05 职场文书
动物科学专业求职信
2014/07/27 职场文书
2014乡镇干部纪律作风整顿思想汇报
2014/09/13 职场文书
2015年行政工作总结范文
2015/04/09 职场文书
目标责任书格式范文
2015/05/11 职场文书
《清澈的湖水》教学反思
2016/02/17 职场文书