首先定义变量

代码var options = jQuery.extend({},jQuery.fn.crudUIGrid.defaults, options);var addTypeName = options.addTypeName;//添加div的页面的名称,默认是type-windowvar formId = options.formId;//要操作的form的名称var title = options.title;//标题var width = options.width;//宽var height = options.height;//高var gridurl = options.gridurl;//请求的url的地址var addurl = options.addurl;//保存是用的链接var loadurl = options.loadurl;//显示load的链接var editurl = options.editurl;//更新使用的链接var delurl = options.delurl;//要删除使用的链接var sortName = options.sortName;//要排序的列名称var sortOrder = options.sortOrder;//排序的方式var remoteSort = options.remoteSort;//是否远程排序var frozenColumns = options.frozenColumns;//合并列,显示列var columns = options.columns;//列显示var pagination = options.pagination;//是否分页

然后添加方法

主要有以下几个方法:

datagrid 列表方法

addWindow 添加方法

editWindow 修改方法

delWindow 删除方法

好,把带方法的插件路径的代码贴上来吧

// JavaScript Document
// 为easyui增加的插件,方便CRUD的操作(function(jQuery){jQuery.fn.crudUIGrid=function(options){var options = jQuery.extend({},jQuery.fn.crudUIGrid.defaults, options);var addTypeName = options.addTypeName;//添加div的页面的名称,默认是type-windowvar formId = options.formId;//要操作的form的名称var title = options.title;//标题var width = options.width;//宽var height = options.height;//高var gridurl = options.gridurl;//请求的url的地址var addurl = options.addurl;//保存是用的链接var loadurl = options.loadurl;//显示load的链接var editurl = options.editurl;//更新使用的链接var delurl = options.delurl;//要删除使用的链接var sortName = options.sortName;//要排序的列名称var sortOrder = options.sortOrder;//排序的方式var remoteSort = options.remoteSort;//是否远程排序var frozenColumns = options.frozenColumns;//合并列,显示列var columns = options.columns;//列显示var pagination = options.pagination;//是否分页return this.each(function(){var win = $('#'+addTypeName+'').window({closed:true});var grid = jQuery(this);grid.datagrid({title:title,iconCls:'icon-save',width:width,height:height,nowrap: false,striped: true,url:gridurl,sortName: sortName,sortOrder: sortOrder,remoteSort: remoteSort,idField:'code',frozenColumns:frozenColumns,columns:columns,pagination:pagination,rownumbers:true,toolbar:[{id:'btnadd',text:'add',iconCls:'icon-add',handler:addWindow},{id:'btncut',text:'Cut',iconCls:'icon-cut',handler:editWindow},'-',{id:'btnsave',text:'Save',disabled:true,iconCls:'icon-save',handler:delWindow}]});grid.datagrid('getPanel').panel({collapsible:true});//添加方法function addWindow(){win.window('open');$('#'+formId+'').form('clear');$('#btn-save').unbind('click').removeAttr('onclick').click(function(){form.form('submit',{url:addurl,onSubmit:function(){},success:function(data){eval('data='+data);if (data.success){grid.datagrid('reload');win.window('close');} else {$.messager.alert('错误',data.msg,'error');}}});});}function editWindow(){var row = grid.datagrid('getSelected');if (row){win.window('open');$('#formId').form('load',loadurl+row.id);$('#btn-save').unbind('click').removeAttr('onclick').click(function(){form.form('submit',{url:editurl,onSubmit:function(){},success:function(data){eval('data='+data);if (data.success){grid.datagrid('reload');win.window('close');} else {$.messager.alert('错误',data.msg,'error');}}});});}else{$.messager.show({title:'警告', msg:'请先选择要修改的记录。'});}}function delWindow(){var ids = [];var rows = grid.datagrid('getSelections');if (rows!=''){for(var i=0;i<rows.length;i++){ids.push(rows[i].id);}ids.join(',');$.messager.confirm('提示信息', '您确认要删除这几条记录吗?', function(data){if(data){$.ajax({url: delurl+ids,type: 'GET',timeout: 1000,error: function(){$.messager.alert('错误','删除失败!','error');},success: function(data){eval('data='+data);if (data.success){grid.datagrid('reload');} else {$.messager.alert('错误',data.msg,'error');}}});}});}else{$.messager.show({title:'警告', msg:'请先选择要删除的记录。'});}}});};jQuery.fn.crudUIGrid.defaults = {addTypeName : 'type-window',title : 'CRUD',pagination : true};})(jQuery);

OK,js插件代码部分已经完成。

看调用部分的代码

代码var win = 'type-window';//添加部分代码的div的名称$('#test').crudUIGrid({addTypeName : win,gridurl : 'datagrid_data.json',addurl : '/idep_b/page/warning/newtype.do?method=save',loadurl : '/idep_b/page/warning/newtype.do?method=input&id=',editurl : '/idep_b/page/warning/newtype.do?method=save',delurl : '/idep_b/page/warning/newtype.do?method=delete&ids=',frozenColumns:[[{field:'ck',checkbox:true},{title:'code',field:'code',width:80,sortable:true}]],columns:[[{title:'Base Information',colspan:3},{field:'opt',title:'Operation',width:100,align:'center', rowspan:2,formatter:function(value,rec){return '<span style="color:red">Edit Delete</span>';}}],[{field:'name',title:'Name',width:120},{field:'addr',title:'Address',width:120,rowspan:2,sortable:true,sorter:function(a,b,order){return (a>b?1:-1)*(order=='asc'?1:-1);}},{field:'col4',title:'Col41',width:150,rowspan:2}]]});});

以下是完整的前台html代码

代码<!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title><link rel="stylesheet" type="text/css" href="../themes/default/easyui.css"><link rel="stylesheet" type="text/css" href="../themes/icon.css"><script language="javascript" src="../jquery-1.4.2.min.js"></script><script language="javascript" src="../plug/jquery.easyui.min.js"></script><script language="javascript" src="../plug/locale/easyui-lang-zh_CN.js"></script><script language="javascript" src="../plug/jquery.uigrid.js"></script><script language="javascript">/**$(function(){$('#test').crudUIGrid({title:'学生信息',columns:[[{field:'name',title:'Name',width:120},{field:'addr',title:'Address',width:120,rowspan:2,sortable:true,sorter:function(a,b,order){return (a>b?1:-1)*(order=='asc'?1:-1);}},{field:'col4',title:'Col41',width:150,rowspan:2}]],});});*/$(function(){var win = 'type-window';//添加部分代码的div的名称$('#test').crudUIGrid({addTypeName : win,gridurl : 'datagrid_data.json',addurl : '/idep_b/page/warning/newtype.do?method=save',loadurl : '/idep_b/page/warning/newtype.do?method=input&id=',editurl : '/idep_b/page/warning/newtype.do?method=save',delurl : '/idep_b/page/warning/newtype.do?method=delete&ids=',frozenColumns:[[{field:'ck',checkbox:true},{title:'code',field:'code',width:80,sortable:true}]],columns:[[{title:'Base Information',colspan:3},{field:'opt',title:'Operation',width:100,align:'center', rowspan:2,formatter:function(value,rec){return '<span style="color:red">Edit Delete</span>';}}],[{field:'name',title:'Name',width:120},{field:'addr',title:'Address',width:120,rowspan:2,sortable:true,sorter:function(a,b,order){return (a>b?1:-1)*(order=='asc'?1:-1);}},{field:'col4',title:'Col41',width:150,rowspan:2}]]});});function getSelected(){var selected = $('#test').datagrid('getSelected');if (selected){alert(selected.code+":"+selected.name+":"+selected.addr+":"+selected.col4);}}function getSelections(){var ids = [];var rows = $('#test').datagrid('getSelections');for(var i=0;i<rows.length;i++){ids.push(rows[i].code);}alert(ids.join(':'));}function clearSelections(){$('#test').datagrid('clearSelections');}function selectRow(){$('#test').datagrid('selectRow',2);}function selectRecord(){$('#test').datagrid('selectRecord','002');}function unselectRow(){$('#test').datagrid('unselectRow',2);}function mergeCells(){$('#test').datagrid('mergeCells',{index:2,field:'addr',rowspan:2,colspan:2});}//关闭窗体function closeWindow(){$('#type-window').window('close');}</script>
</head><body><h1>CRUD表格</h1><div style="margin-bottom:10px;"><a href="#" onClick="resize()">resize</a><a href="#" onClick="getSelected()">getSelected</a><a href="#" onClick="getSelections()">getSelections</a><a href="#" onClick="clearSelections()">clearSelections</a><a href="#" onClick="selectRow()">selectRow</a><a href="#" onClick="selectRecord()">selectRecord</a><a href="#" onClick="unselectRow()">unselectRow</a><a href="#" onClick="mergeCells()">mergeCells</a></div><table id="test"></table><!--添加部分代码--><div id="type-window" title="告警类型维护" style="width:600px;height:320px;"><div style="padding:0px 0px 0px 0px;"><table width="98%" border="1" bordercolor="#a8d1e7" class="masktable"><tr><th colspan="4" class="title"><div class="bgimg">告警类型</div></th></tr><tr><th>告警实体:</th><td class="input_bg"><font color="red">*</font></td></tr><tr><th>告警级别:</th><td class="input_bg"><font color="red">*</font></td></tr><tr><th>告警状态:</th><td class="input_bg"><font color="red">*</font></td></tr><tr><th>告警阀值:</th><td class="input_bg"><font color="red">*</font></td></tr><tr><th>告警时间间隔:</th><td class="input_bg">(分钟)</td></tr><tr><th>接收人员手机号:</th><td class="input_bg"><input type="button" class="btn-style-01" value="查询" onClick="queryPersonName();"/></td></tr></table></div><div style="text-align:center;padding:5px;"><a href="javascript:void(0)" onclick="" id="btn-save" class="easyui-linkbutton" icon="icon-ok">保存</a><a href="javascript:void(0)" onClick="closeWindow()" id="btn-cancel" class="easyui-linkbutton" icon="icon-cancel">取消</a></div></div></body>
</html>

因为这里上传附件的大小有限,所以将程序的源代码放到我的另一个博客的路径下

如果想要源码的话可以去下载。

http://lgstarzkhl.javaeye.com/admin/blogs/784141

下载后在html/t_4.html文件就是,在后面我会继续加入与后台通信的代码来完善整个工程。

使用jquery-easyui写的CRUD插件(2)相关推荐

  1. YbSoftwareFactory 代码生成插件【八】:基于JQuery EasyUI、Web Api的 ASP.NET MVC 代码生成插件...

    "YbRapidSolution for MVC"是 YbSoftwareFactory 最新的代码生成插件,可一键生成基于ASP.NET MVC的解决方案源代码.其生成的 Dem ...

  2. easyui treegrid php,jQuery EasyUI 数据网格与树插件 – Treegrid 树形网格 | 菜鸟教程

    jQuery EasyUI 数据网格与树插件 - Treegrid 树形网格 jQuery EasyUI 插件 扩展自 $.fn.datagrid.defaults.通过 $.fn.treegrid. ...

  3. html accordion折叠菜单动态,jQuery EasyUI 布局插件 – Accordion 折叠面板 | 菜鸟教程...

    jQuery EasyUI 布局插件 - Accordion 折叠面板 jQuery EasyUI 插件 通过 $.fn.accordion.defaults 重写默认的 defaults. 折叠面板 ...

  4. jQuery EasyUI ztree插件使用

    1.下载easyUI的开发包 该包的结构是 2.将easyUI的资源文件引入的页面中: <link rel="stylesheet" type="text/css& ...

  5. jquery手写轮播图_15个超强的jQuery/HTML5图片轮播插件

    最近我们为大家分享过不少基于jQuery的图片轮播插件,当然也有很多使用了HTML5和CSS3的相关技术,让整个图片播放器显得更加美观,动画效果显得更加炫酷.这次我们特意为大家筛选了一些最新的jQue ...

  6. jQuery EasyUI使用教程之创建展开行详细编辑表单的CRUD应用

    2019独角兽企业重金招聘Python工程师标准>>> 当切换datagrid视图到"detailview"时,用户可以展开一行来显示该行下面的任何详细信息.此功 ...

  7. jQuery EasyUI教程之datagrid应用-1

    一.利用jQuery EasyUI的DataGrid创建CRUD应用 对网页应用程序来说,正确采集和管理数据通常很有必要,DataGrid的CRUD功能允许我们创建页面来列表显示和编辑数据库记录.本教 ...

  8. jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染问题的解决方法

    博客分类: jquery-easyui jQueryAjax框架HTML  现象: AJAX返回的html无法做到自动渲染为EasyUI的样式.比如:class="easyui-layout ...

  9. ztree和php结合实例,实例详解jQuery EasyUI结合zTree树形结构制作web页面

    JQuery EasyUI 结合 zTree树形结构制作web页面.easyui用起来比较简单,很好的封装了jquery的部分功能,使用起来更加方便,但是从1.2.3版本以后,商业用途是需要付费的,z ...

最新文章

  1. 2022-2028年中国电梯行业市场调查及前瞻分析报告
  2. 【Linux开发】linux设备驱动归纳总结(十二):简单的数码相框
  3. 小木木的Python学习笔记
  4. Caffe 增加自定义 Layer 及其 ProtoBuffer 参数
  5. 容器编排技术 -- Kubernetes StatefulSets
  6. 嘉年华回顾丨 樊文凯分享Oracle 数据库异构上云最佳实践
  7. php函数、类和对象以及类的封装、继承、类的静态方法、静态属性
  8. 【MySQL学习】-- 0x04 通配符小结
  9. 2018阿里编程测验题:最短汉密尔顿回路
  10. 修改数据库表数据的办法
  11. Deepin linux 15.9.1 Ubuntu 16.04 安装zsteg、gem
  12. JS 获取WEB请求路径
  13. 洛谷P4548 [CTSC2006]歌唱王国(概率生成函数)
  14. pycharm 2018 永久激活
  15. ardruino控制继电器_用 Arduino 实现带继电器的拨动开关
  16. 系统没有安装任何软件如何查看电脑开机启动项
  17. Ubuntu16.04分辨率过低,无法调高
  18. python练习之CheckiO-HOME小岛
  19. 线索二叉树的前序遍历
  20. 【看了就懂】P问题、NP问题、NP完全问题和NP难问题

热门文章

  1. Android 测试教程
  2. 上古卷轴5python_基于Python-Flask的权限管理5:字典管理
  3. python2.7.3怎么安装_python2.7.3的安装
  4. php js 异步上传图片,javascript实现异步图片上传方法实例
  5. 一周一论文(翻译)——[Acta 1996] The Log-Structured Merge-Tree (LSM-Tree)
  6. java 正则匹配 sql星号,18. 正则表达式:开头、结尾、任意一个字符、星号和加号匹配...
  7. python怎么读write_Python如何读写文件?python写入文件读写操作详解
  8. 测试面试话题5: 如何不漏测
  9. 大战设计模式【17】—— 建造者模式
  10. 2017寒假第一篇随笔(寒假作业一)