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 相关文章推荐
关于js new Date() 出现NaN 的分析
Oct 23 Javascript
理解jQuery stop()方法
Nov 21 Javascript
JavaScript和HTML DOM的区别与联系及Javascript和DOM的关系
Nov 15 Javascript
js 提交form表单和设置form表单请求路径的实现方法
Oct 25 Javascript
jQuery实现动态文字搜索功能
Jan 05 Javascript
原生js实现商品放大镜效果
Jan 12 Javascript
前端构建工具之gulp的配置与搭建详解
Jun 12 Javascript
代码详解Vuejs响应式原理
Dec 20 Javascript
vue如何安装使用Quill富文本编辑器
Sep 21 Javascript
一次让你了解全部JavaScript的作用域
Jun 24 Javascript
关于Layui Table隐藏列问题
Sep 16 Javascript
React实现类似淘宝tab居中切换效果的示例代码
Jun 02 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
简单的php 验证图片生成函数
2009/05/21 PHP
解析PHP提交后跳转
2013/06/23 PHP
PHP unlink与rmdir删除目录及目录下所有文件实例代码
2018/02/07 PHP
JScript的条件编译
2007/05/29 Javascript
IE bug table元素的innerHTML
2010/01/11 Javascript
ASP.NET jQuery 实例7 通过jQuery来获取DropDownList的Text/Value属性值
2012/02/03 Javascript
Jquery同辈元素选中/未选中效果的实例代码
2013/08/01 Javascript
JavaScript常用脚本汇总(二)
2015/03/04 Javascript
JavaScript中的Promise使用详解
2015/06/24 Javascript
jquery插件EasyUI中form表单提交实例分享
2016/01/11 Javascript
jQuery AjaxUpload 上传图片代码
2016/02/02 Javascript
Javascript中Date类型和Math类型详解
2016/02/27 Javascript
简述JavaScript提交表单的方式 (Using JavaScript Submit Form)
2016/03/18 Javascript
使用JS编写的随机抽取号码的小程序
2017/08/11 Javascript
Vue filter介绍及详细使用
2018/04/04 Javascript
vue 国际化 vue-i18n 双语言 语言包
2018/06/07 Javascript
解决layui中table异步数据请求不支持自定义返回数据格式的问题
2018/08/19 Javascript
在vue-cli 3中给stylus、sass样式传入共享的全局变量
2019/08/12 Javascript
vuex + keep-alive实现tab标签页面缓存功能
2019/10/17 Javascript
[02:32]DOTA2亚洲邀请赛 VG战队巡礼
2015/02/03 DOTA
[01:03:31]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第二局
2016/02/26 DOTA
在MAC上搭建python数据分析开发环境
2016/01/26 Python
Python用UUID库生成唯一ID的方法示例
2016/12/15 Python
Python 内置函数memoryview(obj)的具体用法
2017/11/23 Python
Python把csv数据写入list和字典类型的变量脚本方法
2018/06/15 Python
使用Python制作一个打字训练小工具
2019/10/01 Python
Python计算不规则图形面积算法实现解析
2019/11/22 Python
使用Python下载抖音各大V视频的思路详解
2021/02/06 Python
iPhoneX安全区域(Safe Area)底部小黑条在微信小程序和H5的屏幕适配
2020/04/08 HTML / CSS
html5用video标签流式加载的实现
2020/05/20 HTML / CSS
Ratchet 模态框的实现
2020/08/19 HTML / CSS
学生生病请假条范文
2014/02/16 职场文书
合同意向书范本
2014/07/30 职场文书
2014年德育工作总结
2014/11/20 职场文书
借条如何写
2015/05/26 职场文书
心灵点滴观后感
2015/06/02 职场文书