1.实现的效果图如下

2.界面:

<div region="center">
        <table id="tt">
        </table>
    </div>

3.引入的js文件

<link rel="stylesheet" type="text/css" href="http://www.cnblogs.com/script/themes/default/easyui.css" />

<link rel="stylesheet" type="text/css" href="http://www.cnblogs.com/script/themes/icon.css" />

<script type="text/javascript" src="http://www.cnblogs.com/script/jquery-1.4.2.min.js" </script>

<script type="text/javascript" src="http://www.cnblogs.com/script/jquery.easyui.min.js" </script>

<script type="text/javascript" src="http://www.cnblogs.com/script/locale/easyui-lang-zh_CN.js" mce_src="script/locale/easyui-lang-zh_CN.js"></script>

4.实现的js代码:

<script type="text/javascript">
var id;
$(document).ready(function () { //初始化所在城区
var dialogParams = window.dialogArguments;
var obj = dialogParams[0];
var xmaqryPartJson = obj['xmaqryPartJson'];
$("[id^=gfzrzt_]").each(function(){
document.getElementById($(this).attr("id")).value = obj[$(this).attr("id").replace("gfzrzt_","")]
})
id = obj['id'];
initData(xmaqryPartJson)
});
function initData(xmaqJson) {
if (xmaqJson == '' || xmaqJson == undefined || xmaqJson == null) {
showTable(new Array());
} else {
var data = $.parseJSON(xmaqJson);
showTable(data);
}
}
var lastIndex = undefined;
function showTable(xmaqJson) {
$("#tt").datagrid({
idField: "id",
fitColumns: false,
title: "项目专职安全生产管理人员",
singleSelect: true,
frozenColumns: [[
{ field: 'id', checkbox: true }
]],
columns: [
[
{field: 'zrztid', align: "center", width: 0},
{field: 'gcid',hidden: true, align: "center", width: 0},
{field: 'gccode', align: "center", width: 0},
{field: 'zzid',hidden: true, align: "center", width: 0},
{field: 'zzsj', align: "center", width: 0},
{field: 'xm', title: '姓名', width: 130, sortable: true, align: 'center',required:true, editor: {type:'text'}},
{field: 'aqsckhzh', title: '安全生产考核证号', width: 150, sortable: true, align: 'center', editor: 'text'},
{field: 'lxdh', title: '联系电话', width: 100, sortable: true, align: 'center', editor: 'text'}
]
],
toolbar: [{
text: '添加',
iconCls: 'icon-add',
handler: function () {
if (endEditing()){
$('#tt').datagrid('appendRow',{row: {
id:'',zrztid:id,gcid:'',
gccode: '',
zzid: '',
zzsj: '',
xm:'',
aqsckhzh: '',
lxdh:''
}});
if($('#tt').datagrid('getRows') != undefined){
lastIndex = $('#tt').datagrid('getRows').length-1;
}
$('#tt').datagrid('selectRow', lastIndex)
.datagrid('beginEdit', lastIndex)
}
}
}, '-', {
text: '删除',
iconCls: 'icon-remove',
handler: function () {
var row = $('#tt').datagrid('getSelected');
if (row) {
var index = $('#tt').datagrid('getRowIndex', row);
$('#tt').datagrid('cancelEdit', index).datagrid('deleteRow', index);
lastIndex = undefined;
}
}
}
// ,'-', {
// text: '保存',
// iconCls: 'icon-save',
// handler: function () {
// if (endEditing()){
// $('#tt').datagrid('acceptChanges');
// }
// }
// }
, '-', {
text: '重置',
iconCls: 'icon-undo',
handler: function () {
$('#tt').datagrid('rejectChanges');
lastIndex = undefined;
}
}] ,
onClickRow: function (index){
if (lastIndex != index){
if (endEditing()){
$('#tt').datagrid('selectRow', index)
.datagrid('beginEdit', index);
lastIndex = index;
} else {
$('#tt').datagrid('selectRow', lastIndex);
}
}
}
});
$("#tt").datagrid("loadData", xmaqJson);
} function endEditing(){
if (lastIndex == undefined){return true}
if ($('#tt').datagrid('validateRow', lastIndex)){
var ed = $('#tt').datagrid('getEditor', {index:lastIndex,field:'xm'});
var xm = $(ed.target).val();
var ed1 = $('#tt').datagrid('getEditor', {index:lastIndex,field:'aqsckhzh'});
var aqsckhzh = $(ed1.target).val();
if(xm != '' && xm != undefined && aqsckhzh !='' && aqsckhzh != undefined){
$('#tt').datagrid('endEdit', lastIndex);
lastIndex = undefined;
return true;
}else{
alert("项目专职安全生产管理人员第"+(lastIndex+1)+"行【姓名】和【安全生产考核】必须填写");
return false;
}
} else {
return false;
}
}
</script>

jquery easyui-datagrid手动增加删除重置行的更多相关文章

  1. JQuery EasyUI DataGrid根据条件设置表格行样式(背景色)

    1.javascript定义函数返回样式 <script type="text/javascript"> //根据条件设置表格行背景颜色 function setRow ...

  2. 扩充 jQuery EasyUI Datagrid 数据行鼠标悬停/离开事件(onMouseOver/onMouseOut)

    客户需求: jQuery EasyUI Datagrid 用户列表鼠标悬停/离开数据行时显示人员头像(onMouseOver/onMouseOut) 如图所示,Datagrid 鼠标悬停/离开数据行时 ...

  3. 扩展 jQuery EasyUI Datagrid 数据行鼠标悬停/离开事件(onMouseOver/onMouseOut)

    客户需求: jQuery EasyUI Datagrid 用户列表鼠标悬停/离开数据行时显示人员头像(onMouseOver/onMouseOut) 如图所示,Datagrid 鼠标悬停/离开数据行时 ...

  4. jquery easyui datagrid 获取Checked选择行(勾选行)数据

    原文:jquery easyui datagrid 获取Checked选择行(勾选行)数据 getSelected:取得第一个选中行数据,如果没有选中行,则返回 null,否则返回记录. getSel ...

  5. JQuery easyUi datagrid 中 自定义editor作为列表操作按钮列

    转自   http://blog.csdn.net/tianlincao/article/details/7494467 前言 JQuery easyUi datagrid 中 使用datagrid生 ...

  6. jquery easyui datagrid使用参考

    jquery easyui datagrid使用参考   创建datagrid 在页面上添加一个div或table标签,然后用jquery获取这个标签,并初始化一个datagrid.代码如下: 页面上 ...

  7. 扩展jquery easyui datagrid编辑单元格

    扩展jquery easyui datagrid编辑单元格 1.随便聊聊 这段时间由于工作上的业务需求,对jquery easyui比较感兴趣,根据比较浅薄的js知识,对jquery easyui中的 ...

  8. JQuery easyUi datagrid 中 editor 动态设置最大值最小值

    前言 近来项目中使用到 easyui 来进行页面设计,感觉挺方便的,但是网上除了api外,其他有价值的资料比较少,故在此分享一点经验,供大家参考.   问题 JQuery easyUi datagri ...

  9. jQuery EasyUI DataGrid Checkbox 数据设定与取值

    纯粹做个记录,以免日后忘记该怎么设定. 这一篇将会说明两种使用 jQuery EasyUI DataGrid 的 Checkbox 设定方式,以及在既有数据下将 checked 为 true 的该笔数 ...

随机推荐

  1. python 字典实现三级菜单

    简介:1.用字典建立一个省市县的三级菜单 2.开始显示所有的省份,输入要进入的省份之后,显示该省份下的所有市,输入市显示该市下的所有县 3.在每一级菜单下都可以返回到上一层菜单 4.随时可以退出 me ...

  2. table JS合并单元格

    function _w_table_rowspan(_w_table_id,_w_table_colnum){ _w_table_firsttd = ""; _w_table_cu ...

  3. 创建Javaweb项目及MyEclipse视图的配置

    在myEclipse里--右键new--Web Project 视图的配置--Window--Show View-Other在里面输入要找的视图例如(servers)或者直接 Window--rese ...

  4. [SPOJ7258]Lexicographical Substring Search

    [SPOJ7258]Lexicographical Substring Search 试题描述 Little Daniel loves to play with strings! He always ...

  5. hdu 1075 字典树

    #include<stdio.h> #include<iostream> struct node { int num,i; node *a[27]; char s[20];// ...

  6. memcache适用和不适用场景[转载]

    适用memcached的业务场景:1)如果网站包含了访问量很大的动态网页,因而数据库的负载将会很高.由于大部分数据库请求都是读操作,那么memcached可以显著地减小数据库负载.2)如果数据库服务器 ...

  7. codeforces 691D(数据结构)

    D. Swaps in Permutation time limit per test 5 seconds memory limit per test 256 megabytes input stan ...

  8. Servlet发送邮件

    以下内容引用自http://wiki.jikexueyuan.com/project/servlet/sending-email.html: 使用Servlet发送一封电子邮件是非常简单的,但是开始之 ...

  9. Python学习系列之反射

    反射的定义 根据字符串的形式去某个对象中操作成员 根据字符串的形式去某个对象中寻找成员 根据字符串的形式去某个对象中设置成员 根据字符串的形式去某个对象中删除成员 根据字符串的形式去某个对象中判断成员 ...

  10. golang convert integer to float number

    There is no float type. Looks like you want float64. You could also use float32 if you only need a s ...