jQuery EasyUI中对表格进行编辑的实现代码


Posted in Javascript onJune 10, 2010

效果图:
jQuery EasyUI中对表格进行编辑的实现代码

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> 
<title>jQuery EasyUI</title> 
<link rel="stylesheet" type="text/css" href="../themes/default/easyui.css"> 
<link rel="stylesheet" type="text/css" href="../themes/icon.css"> 
<script type="text/javascript" src="../jquery-1.4.2.min.js"></script> 
<script type="text/javascript" src="../jquery.easyui.min.js"></script> 
<script> 
var users = {total:6,rows:[ 
{no:1,name:'用户1',addr:'山东济南',email:'user1@163.com',birthday:'1/1/1980'}, 
{no:2,name:'用户2',addr:'山东济南',email:'user2@163.com',birthday:'1/1/1980'}, 
{no:3,name:'用户3',addr:'山东济南',email:'user3@163.com',birthday:'1/1/1980'}, 
{no:4,name:'用户4',addr:'山东济南',email:'user4@163.com',birthday:'1/1/1980'}, 
{no:5,name:'用户5',addr:'山东济南',email:'user5@163.com',birthday:'1/1/1980'}, 
{no:6,name:'用户6',addr:'山东济南',email:'user6@163.com',birthday:'1/1/1980'} 
]}; 
$(function(){ 
$('#tt').datagrid({ 
title:'Editable DataGrid', 
iconCls:'icon-edit', 
width:530, 
height:250, 
singleSelect:true, 
columns:[[ 
{field:'no',title:'编号',width:50,editor:'numberbox'}, 
{field:'name',title:'名称',width:60,editor:'text'}, 
{field:'addr',title:'地址',width:100,editor:'text'}, 
{field:'email',title:'电子邮件',width:100, 
editor:{ 
type:'validatebox', 
options:{ 
validType:'email' 
} 
} 
}, 
{field:'birthday',title:'生日',width:80,editor:'datebox'}, 
{field:'action',title:'操作',width:70,align:'center', 
formatter:function(value,row,index){ 
if (row.editing){ 
var s = '<a href="#" onclick="saverow('+index+')">保存</a> '; 
var c = '<a href="#" onclick="cancelrow('+index+')">取消</a>'; 
return s+c; 
} else { 
var e = '<a href="#" onclick="editrow('+index+')">编辑</a> '; 
var d = '<a href="#" onclick="deleterow('+index+')">删除</a>'; 
return e+d; 
} 
} 
} 
]], 
toolbar:[{ 
text:'增加', 
iconCls:'icon-add', 
handler:addrow 
},{ 
text:'保存', 
iconCls:'icon-save', 
handler:saveall 
},{ 
text:'取消', 
iconCls:'icon-cancel', 
handler:cancelall 
}], 
onBeforeEdit:function(index,row){ 
row.editing = true; 
$('#tt').datagrid('refreshRow', index); 
editcount++; 
}, 
onAfterEdit:function(index,row){ 
row.editing = false; 
$('#tt').datagrid('refreshRow', index); 
editcount--; 
}, 
onCancelEdit:function(index,row){ 
row.editing = false; 
$('#tt').datagrid('refreshRow', index); 
editcount--; 
} 
}).datagrid('loadData',users).datagrid('acceptChanges'); 
}); 
var editcount = 0; 
function editrow(index){ 
$('#tt').datagrid('beginEdit', index); 
} 
function deleterow(index){ 
$.messager.confirm('确认','是否真的删除?',function(r){ 
if (r){ 
$('#tt').datagrid('deleteRow', index); 
} 
}); 
} 
function saverow(index){ 
$('#tt').datagrid('endEdit', index); 
} 
function cancelrow(index){ 
$('#tt').datagrid('cancelEdit', index); 
} 
function addrow(){ 
if (editcount > 0){ 
$.messager.alert('警告','当前还有'+editcount+'记录正在编辑,不能增加记录。'); 
return; 
} 
$('#tt').datagrid('appendRow',{ 
no:'', 
name:'', 
addr:'', 
email:'', 
birthday:'' 
}); 
} 
function saveall(){ 
$('#tt').datagrid('acceptChanges'); 
} 
function cancelall(){ 
$('#tt').datagrid('rejectChanges'); 
} 
</script> 
</head> 
<body> 
<h1>Editable DataGrid</h1> 
<table id="tt"></table> 
</body> 
</html>
Javascript 相关文章推荐
js校验表单后提交表单的三种方法总结
Feb 28 Javascript
了不起的node.js读书笔记之node.js中的特性
Dec 22 Javascript
JavaScript常用的返回,自动跳转,刷新,关闭语句汇总
Jan 13 Javascript
详解javascript数组去重问题
Nov 06 Javascript
window.location.reload 刷新使用分析(去对话框)
Nov 11 Javascript
JS匿名函数实例分析
Nov 26 Javascript
JavaScript中String对象的方法介绍
Jan 04 Javascript
jQuery插件版本冲突的处理方法分析
Jan 16 Javascript
vue2 中如何实现动态表单增删改查实例
Jun 09 Javascript
使用Object.defineProperty如何巧妙找到修改某个变量的准确代码位置
Nov 02 Javascript
js操作table中tr的顺序实现上移下移一行的效果
Nov 22 Javascript
vue点击Dashboard不同内容 跳转到同一表格的实例
Nov 13 Javascript
jQuery创建自己的插件(自定义插件)的方法
Jun 10 #Javascript
jQuery-ui中自动完成实现方法
Jun 10 #Javascript
Array.prototype.slice 使用扩展
Jun 09 #Javascript
Confirmer JQuery确认对话框组件
Jun 09 #Javascript
Jquery CheckBox全选方法代码附js checkbox全选反选代码
Jun 09 #Javascript
JavaScript 原型与继承说明
Jun 09 #Javascript
JavaScript 构造函数 面相对象学习必备知识
Jun 09 #Javascript
You might like
PHP 日常开发小技巧
2009/09/23 PHP
PHP获取和操作配置文件php.ini的几个函数介绍
2013/06/24 PHP
PHP有序表查找之插值查找算法示例
2018/02/10 PHP
ThinkPHP3.1.2 使用cli命令行模式运行的方法
2020/04/14 PHP
很酷的javascript loading效果代码
2008/06/18 Javascript
JS 参数传递的实际应用代码分析
2009/09/13 Javascript
JS正则表达式大全(整理详细且实用)
2013/11/14 Javascript
Javascript WebSocket使用实例介绍(简明入门教程)
2014/04/16 Javascript
innerHTML属性,outerHTML属性,textContent属性,innerText属性区别详解
2015/03/13 Javascript
老生常谈javascript的面向对象思想
2017/08/22 Javascript
Vue组件库发布到npm详解
2018/02/17 Javascript
javascript实现手动点赞效果
2019/04/09 Javascript
Vue的编码技巧与规范使用详解
2019/08/28 Javascript
微信小程序 冒泡事件原理解析
2019/09/27 Javascript
jquery实现吸顶导航效果
2020/01/08 jQuery
微信小程序swiper组件实现抖音翻页切换视频功能的实例代码
2020/06/24 Javascript
vue 判断元素内容是否超过宽度的方式
2020/07/29 Javascript
Vue绑定用户接口实现代码示例
2020/11/04 Javascript
简单介绍Ruby中的CGI编程
2015/04/10 Python
在Python中使用SimpleParse模块进行解析的教程
2015/04/11 Python
python 实现删除文件或文件夹实例详解
2016/12/04 Python
Python 中Pickle库的使用详解
2018/02/24 Python
django允许外部访问的实例讲解
2018/05/14 Python
Python实现正则表达式匹配任意的邮箱方法
2018/12/20 Python
Win10系统下安装labelme及json文件批量转化方法
2019/07/30 Python
python中如何实现将数据分成训练集与测试集的方法
2019/09/13 Python
Keras设定GPU使用内存大小方式(Tensorflow backend)
2020/05/22 Python
css 如何让背景图片拉伸填充避免重复显示
2013/07/11 HTML / CSS
浅析HTML5的WebSocket与服务器推送事件
2016/02/19 HTML / CSS
澳大利亚UGG工厂直销:Australian Ugg Boots
2017/10/14 全球购物
关于环保的活动方案
2014/08/25 职场文书
小学关爱留守儿童活动方案
2014/08/25 职场文书
教书育人演讲稿
2014/09/11 职场文书
2014年测量员工作总结
2014/12/12 职场文书
Python趣味实战之手把手教你实现举牌小人生成器
2021/06/07 Python
唤醒紫霞仙子,携手再游三界!大话手游X《大话西游》电影合作专属剧情任务
2022/04/03 其他游戏