jquery学习笔记二 实现可编辑的表格


Posted in Javascript onApril 09, 2010

实现可编辑的表格demo:

实例图:
jquery学习笔记二 实现可编辑的表格

代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head runat="server"> 
<title></title> 
<script type="text/jscript" src="jquery-1.4.2.min.js"></script> 
<script type="text/jscript" language="javascript"> 
//简化的ready写法:页面加载完成时候调用 
$(function() { 
//将tbody内的偶数tr的背景颜色设置为#ECE9D8 
$("tbody tr:even").css("background-color", "#ECE9D8"); 
//将tbody内的偶数td设置为numTd 
var numTd = $("tbody td:even"); 
//给这些单元格注册鼠标点击的事件 
numTd.click(function() { 
//取点击到元素的jquery对象 
var tdObj = $(this); 
//如果点击的元素包含input控件则不执行click处理 
if (tdObj.children("input").length > 0) { 
return false; 
} 
//取td内容附值到text 
var text = tdObj.html(); 
//清空td中的内容 
tdObj.html(""); 
//创建一个文本框,去掉文本框的边框,设置文本框中的文字字体大小是16px 
//使文本框的宽度和td的宽度相同,设置文本框的背景色,需要将当前td中的内容放到文本框中 
//将文本框插入到td中 
var inputObj = $("<input type='text'>").css("border-width", "0") 
.css("font-size", "16px").width(tdObj.width()) 
.css("background-color", tdObj.css("background-color")) 
.val(text).appendTo(tdObj); 
//设置触发器先触发focus事件再触发select事件 
inputObj.trigger("focus").trigger("select"); 
//是文本框插入之后就被选中 
inputObj.click(function() { 
return false; 
}); 
//注册keyup事件 
inputObj.keyup(function(event) { 
//获取当前按下键盘的键值 
var keycode = event.which; 
//处理回车的情况 
if (keycode == 13) { 
//获取当当前文本框中的内容 
var inputtext = $(this).val(); 
//将td的内容修改成文本框中的内容 
tdObj.html(inputtext); 
} 
//处理esc的情况 
if (keycode == 27) { 
//将td中的内容还原成text 
tdObj.html(text); 
} 
}); 
}); 
}); 
</script> 
<style type="text/css"> 
table 
{ 
border: 1px solid black; 
border-collapse: collapse; 
width: 400px; 
} 
table td 
{ 
border: 1px solid black; 
width: 50%; 
} 
table th 
{ 
border: 1px solid black; 
width: 50%; 
} 
tbody th 
{ 
background-color: #A3BAE9; 
} 
</style> 
</head> 
<body> 
<form id="form1" runat="server"> 
<table> 
<thead> 
<tr> 
<th colspan="2"> 
鼠标点击表格项就可以编辑 
</th> 
</tr> 
</thead> 
<tbody> 
<tr> 
<th> 
学号 
</th> 
<th> 
姓名 
</th> 
</tr> 
<tr> 
<td> 
000001 
</td> 
<td> 
张三 
</td> 
</tr> 
<tr> 
<td> 
000002 
</td> 
<td> 
李四 
</td> 
</tr> 
<tr> 
<td> 
000003 
</td> 
<td> 
王五 
</td> 
</tr> 
<tr> 
<td> 
000004 
</td> 
<td> 
赵六 
</td> 
</tr> 
</tbody> 
</table> 
</form> 
</body> 
</html>

知识点:
1.$(function() {})是$(document).ready(function() {})的简写。
2.$("tbody td:even")中“:”表示过滤,even为偶数函数,筛选条件可以在帮助文档的选择器中查找。此句表示返回tbody内的偶数td,结果为集合。
3.在事件中$(this)将返回此控件的jquery对象。
4.children("input")表示取所有子元素包含input的jquery对象,结果为集合。
5.css("border-width", "0")表示设置css属性的值。
6.trigger("focus").trigger("select")表示设置事件先触发focus,再触发select。
7.keyup(function(event) {var keycode = event.which;})表示注册键盘事件,参数event的which属性存储键盘信息。
Javascript 相关文章推荐
jQuery下的几个你可能没用过的功能
Aug 29 Javascript
多次注册事件会导致一个事件被触发多次的解决方法
Aug 12 Javascript
js原型继承的两种方法对比介绍
Mar 30 Javascript
javascript学习笔记(六)数据类型和JSON格式
Oct 08 Javascript
ionic 上拉菜单(ActionSheet)实例代码
Jun 06 Javascript
knockoutjs动态加载外部的file作为component中的template数据源的实现方法
Sep 01 Javascript
AngularJS constant和value区别详解
Feb 28 Javascript
Node.js开发第三方微信公众平台
Jun 05 Javascript
关于jquery form表单序列化的注意事项详解
Aug 01 jQuery
jsonp跨域及实现百度首页联想功能的方法
Aug 30 Javascript
JS中类的静态方法,静态变量,实例方法,实例变量区别与用法实例分析
Mar 14 Javascript
JavaScript文档对象模型DOM
Nov 20 Javascript
jquery 图片截取工具jquery.imagecropper.js
Apr 09 #Javascript
跟着JQuery API学Jquery 之三 筛选
Apr 09 #Javascript
跟着JQuery API学Jquery 之二 属性
Apr 09 #Javascript
JSON 教程 json入门学习笔记
Sep 22 #Javascript
jquery.AutoComplete.js中文修正版(支持firefox)
Apr 09 #Javascript
javaScript call 函数的用法说明
Apr 09 #Javascript
javascript 自动填写表单的实现方法
Apr 09 #Javascript
You might like
盘点被央视点名过的日本动画电影 一部比一部强
2020/03/08 日漫
php教程 插件机制在PHP中实现方案
2012/11/02 PHP
php表单敏感字符过滤类
2014/12/08 PHP
php使用gd2绘制基本图形示例(直线、圆、正方形)
2017/02/15 PHP
PHP有序表查找之二分查找(折半查找)算法示例
2018/02/09 PHP
JavaScript使用过程中需要注意的地方和一些基本语法
2010/08/26 Javascript
JS获取下拉列表所选中的TEXT和Value的实现代码
2014/01/11 Javascript
jquery如何判断表格同一列不同行input数据是否重复
2014/05/14 Javascript
JQuery弹出炫丽对话框的同时让背景变灰色
2014/05/22 Javascript
jQuery CSS()方法改变现有的CSS样式
2014/08/20 Javascript
多个js毫秒倒计时同时进行效果
2016/01/05 Javascript
基于jQuery Tipso插件实现消息提示框特效
2016/03/16 Javascript
基于JS实现的随机数字抽签实例
2016/12/08 Javascript
JS开发中百度地图+城市联动实现实时触发查询地址功能
2017/04/13 Javascript
AngularJS常见过滤器用法实例总结
2017/07/06 Javascript
cordova入门基础教程及使用中遇到的一些问题总结
2017/11/14 Javascript
关于vue的npm run dev和npm run build的区别介绍
2019/01/14 Javascript
基于PHP pthreads实现多线程代码实例
2020/06/24 Javascript
[01:31:02]TNC vs VG 2019国际邀请赛淘汰赛 胜者组赛BO3 第一场
2019/08/22 DOTA
python中常用检测字符串相关函数汇总
2015/04/15 Python
详解Python中映射类型的内建函数和工厂函数
2015/08/19 Python
Python的for和break循环结构中使用else语句的技巧
2016/05/24 Python
Python+tkinter使用80行代码实现一个计算器实例
2018/01/16 Python
Python装饰器用法实例分析
2019/01/14 Python
Python3爬楼梯算法示例
2019/03/04 Python
Python基于机器学习方法实现的电影推荐系统实例详解
2019/06/25 Python
Python中os模块功能与用法详解
2020/02/26 Python
python文件操作seek()偏移量,读取指正到指定位置操作
2020/07/05 Python
Pytorch自定义Dataset和DataLoader去除不存在和空数据的操作
2021/03/03 Python
法国购买隐形眼镜和眼镜网站:Optical Center
2019/10/08 全球购物
计算机专业自荐信
2013/10/14 职场文书
大学生先进事迹材料
2014/02/16 职场文书
卫生系统先进事迹
2014/05/13 职场文书
领导班子四风对照检查材料范文
2014/09/27 职场文书
学生保证书格式
2015/02/27 职场文书
唤醒紫霞仙子,携手再游三界!大话手游X《大话西游》电影合作专属剧情任务
2022/04/03 其他游戏