- 浏览: 3425457 次
- 性别:
- 来自: 珠海
文章分类
- 全部博客 (1633)
- Java (250)
- Android&HTML5 (111)
- Struts (10)
- Spring (236)
- Hibernate&MyBatis (115)
- SSH (49)
- jQuery插件收集 (55)
- Javascript (145)
- PHP (77)
- REST&WebService (18)
- BIRT (27)
- .NET (7)
- Database (105)
- 设计模式 (16)
- 自动化和测试 (19)
- Maven&Ant (43)
- 工作流 (36)
- 开源应用 (156)
- 其他 (16)
- 前台&美工 (119)
- 工作积累 (0)
- OS&Docker (83)
- Python&爬虫 (28)
- 工具软件 (157)
- 问题收集 (61)
- OFbiz (6)
- noSQL (12)
最新评论
-
HEZR曾嶸:
你好博主,这个不是很理解,能解释一下嘛//左边+1,上边+1, ...
java 两字符串相似度计算算法 -
天使建站:
写得不错,可以看这里,和这里的这篇文章一起看,有 ...
jquery 遍历对象、数组、集合 -
xue88ming:
很有用,谢谢
@PathVariable映射出现错误: Name for argument type -
jnjeC:
厉害,困扰了我很久
MyBatis排序时使用order by 动态参数时需要注意,用$而不是# -
TopLongMan:
非常好,很实用啊。。
PostgreSQL递归查询实现树状结构查询
jqgrid保存或者删除成功后调用自定义方法的解决方法
- 博客分类:
- Javascript
参考: http://www.debugease.com/javascript/200760.html
开始处理方式
1. 工具栏方式, 定义navGrid变量的时候,
下面配置删除后处理配置:
2. 如果是colModel里面配置:
非改源码扩展
1. 在初始化表格的配置加上自定义的方法
2. 重写事件后要处理的方法
3. 改变调用的地方, 让他们调用同一处地方
工具条
colModel:
如果后台要返回自己定义的成功或者错误信息, 那又如何显示呢?
1. controller返回一个对象:
@RequestMapping(value = "/saveGrid.do")
@ResponseBody
public ControllerContext saveGrid(HttpServletRequest request, @RequestBody Map<String,Object> params) {
System.out.println(JSONUtil.toJSONString(params));
ControllerContext context=new ControllerContext();
context.addMessage("保存成功.");
context.setSuccess(true);
context.setStatus(168);
return context;
}
2. 这个返回的信息保存在:data.responseJSON, data.responseText里面, 可以自己使用.
开始处理方式
1. 工具栏方式, 定义navGrid变量的时候,
下面配置删除后处理配置:
{ ...... del: true, delicon: 'icon-trash red', ...... } ...... { //delete record form recreateForm: true, /*beforeShowForm: function (e) { var form = $(e[0]); if (form.data('styled')) return false; form.closest('.ui-jqdialog').find('.ui-jqdialog-titlebar').wrapInner('<div class="widget-header" />'); $.GridUtils.style_delete_form(form); form.data('styled', true); },*/ beforeShowForm: $.GridUtils.beforeDeleteCallback, afterSubmit:function(data,postdata){ alert("afterSubmit"); return [true,""]; //返回0表示正常 }, afterComplete:function(data,postdata){ alert("afterComplete"); //这里不用返回 } }
2. 如果是colModel里面配置:
{ name: 'myac', index: '', width: 80, fixed: true, sortable: false, resize: false, formatter: 'actions', formatoptions: { keys: true, delOptions: {recreateForm: true, beforeShowForm: $.GridUtils.beforeDeleteCallback,afterSubmit:function(data,postdata){ alert("afterSubmit1"); return [true,""]; //返回0表示正常 }, afterComplete:function(data,postdata){ alert("afterComplete1"); //这里不用返回 }}, editformbutton:true, editOptions:{recreateForm: true, beforeShowForm:$.GridUtils.beforeEditCallback,afterShowForm:$.GridUtils.afterEditCallback} } }
非改源码扩展
1. 在初始化表格的配置加上自定义的方法
afterSubmit:function(data,postdata){ alert("afterSubmit"); return [true,""];//原样返回. }, afterComplete:function(data,postdata){ alert("afterComplete"); }
2. 重写事件后要处理的方法
function afterSubmitCallback(data,postdata){ //用于提交事件完成后处理 alert("afterSubmitCallback"); var $t=this; if($.isFunction($t.p.afterSubmit)){ return $t.p.afterSubmit(data,postdata); }else{ return [true,""];//原样返回. } } function afterCompleteCallback(data,postdata){ //用于提交事件完成后处理 alert("afterCompleteCallback"); var $t=this; if($.isFunction($t.p.afterComplete)){ $t.p.afterComplete(data,postdata); } }
3. 改变调用的地方, 让他们调用同一处地方
工具条
{ //delete record form recreateForm: true, /*beforeShowForm: function (e) { var form = $(e[0]); if (form.data('styled')) return false; form.closest('.ui-jqdialog').find('.ui-jqdialog-titlebar').wrapInner('<div class="widget-header" />'); $.GridUtils.style_delete_form(form); form.data('styled', true); },*/ beforeShowForm: $.GridUtils.beforeDeleteCallback, afterSubmit: afterSubmitCallback, afterComplete:afterCompleteCallback }
colModel:
{ name: 'myac', index: '', width: 80, fixed: true, sortable: false, resize: false, formatter: 'actions', formatoptions: { keys: true, delOptions: {recreateForm: true, beforeShowForm: $.GridUtils.beforeDeleteCallback,afterSubmit: afterSubmitCallback, afterComplete:afterSubmitCallback}, editformbutton:true, editOptions:{recreateForm: true, beforeShowForm:$.GridUtils.beforeEditCallback,afterShowForm:$.GridUtils.afterEditCallback,afterSubmit: afterSubmitCallback, afterComplete:afterCompleteCallback} } }
如果后台要返回自己定义的成功或者错误信息, 那又如何显示呢?
1. controller返回一个对象:
@RequestMapping(value = "/saveGrid.do")
@ResponseBody
public ControllerContext saveGrid(HttpServletRequest request, @RequestBody Map<String,Object> params) {
System.out.println(JSONUtil.toJSONString(params));
ControllerContext context=new ControllerContext();
context.addMessage("保存成功.");
context.setSuccess(true);
context.setStatus(168);
return context;
}
2. 这个返回的信息保存在:data.responseJSON, data.responseText里面, 可以自己使用.
发表评论
-
TimeDifference.js获取时间差插件
2016-06-06 16:46 1169http://www.oschina.net/p/timedi ... -
日期时间插件Date-Utils
2016-05-28 23:16 1342原文 https://segmentfault.com/a/1 ... -
Riot v2.4.1 发布,JavaScript 的 MVP 框架
2016-05-23 13:14 979http://www.oschina.net/news/736 ... -
个最实用的JavaScript开发工具
2016-05-21 10:22 853http://my.oschina.net/u/2421687 ... -
zepto tap “点透”的解决
2016-05-20 15:44 1039http://my.oschina.net/u/2497925 ... -
Date.js
2016-04-20 17:09 996原文 http://my.oschina.net/hnqing ... -
你真的了解图片的预加载吗
2016-04-14 10:26 1126http://my.oschina.net/HerrySun/ ... -
JavaScript之立即执行函数
2016-03-30 11:42 1237http://blog.csdn.net/qq83841923 ... -
JavaScript迭代
2016-03-27 01:44 750http://my.oschina.net/u/2346786 ... -
zepto(移动简化版jQuery),的 API 分类
2016-03-24 09:22 1735http://my.oschina.net/leejun200 ... -
[HTML5]Notification桌面提醒功能
2016-03-23 21:20 998[HTML5]Notification桌面提醒功能 http: ... -
js中浮点型运算
2015-12-14 11:12 1329http://www.cnblogs.com/wangkong ... -
JavaScript 文件拖拽上传插件 dropzone.js 介绍
2015-12-04 23:12 1834JavaScript 文件拖拽上传插件 dropzone.js ... -
Java执行js脚本
2015-11-14 23:40 1033http://my.oschina.net/sniperLi/ ... -
YUI Compressor压缩JS
2015-11-06 17:12 1094过程心得记录 http://www.cnblogs.com/t ... -
如何使用js、html5在浏览器直接打开pdf文档
2015-11-03 22:32 8672http://q.cnblogs.com/q/48507/ ... -
js获取 本周,本月,本季度,本年,上月,上周,上季度,去年
2015-11-03 00:01 2941/** * 针对Ext的工具类 */ var ... -
正则表达式
2015-10-10 09:27 906http://my.oschina.net/robortly/ ... -
jquery垮页面事件传递
2015-08-25 21:18 1072http://my.oschina.net/u/157514/ ... -
Comet4J AJAX 服务器推送框架
2015-08-24 22:01 1499http://my.oschina.net/u/230843/ ...
相关推荐
5. **bin**:在ASP.NET中,这个文件夹用于存放编译后的程序集(DLLs),可能包括jqGrid相关的服务器端组件或自定义的业务逻辑代码。通过这些文件,开发者可以了解后端与jqGrid交互的方式。 6. **themes**:这个...
在确认删除提示后,jqGrid会向服务器发送删除请求。服务器返回成功消息后,使用`delRowData`从表格中移除相应行。为了防止误操作,可以启用确认对话框。 五、还原与撤销 jqGrid提供了撤销功能,允许用户撤销最近的...
7. **自定义行为**:通过事件监听和回调函数,可以实现自定义的行为,比如在数据加载后执行某些操作,或在用户进行编辑、保存等操作时进行验证。 8. **国际化**:jqGrid 支持多语言,可以设置 `locale` 参数来切换...
3. 在JavaScript中,通过jQuery选择器获取到表格元素,然后调用`.jqGrid()`方法进行初始化,设置各种选项,如列定义、数据源、分页参数等。 4. 可以通过`.navGrid()`方法添加导航栏,包括搜索、添加、编辑和删除等...
**增加(Add)**:在 jqGrid 中添加新记录通常通过调用 `editGridRow` 方法实现,但在这个项目中,可能会使用一个 modal 弹出框来收集用户输入的数据。当用户点击“添加”按钮时,一个模态窗口会打开,展示用于输入...
- **编辑操作事件**:如`beforeSubmitCell`在提交编辑前执行,`afterSaveCell`在保存成功后执行。 4. **高级特性** - **分组网格**:通过`grouping`和`groupField`设置,可以对数据进行分组展示。 - **过滤与...
2. 初始化表格:通过JavaScript代码设置表格的列、数据源、分页参数等属性,然后调用jqGrid初始化方法创建表格。 3. 配置数据源:可以使用JSON、XML或数组等形式提供数据,jqGrid会自动解析并显示在表格中。 4. 添加...
2. **编辑**:jqGrid的`editRow`和`saveRow`方法用于编辑和保存行数据。后台接收到更新请求,根据传入的ID查找并更新数据。 3. **删除**:使用`delRowData`删除行,jqGrid会发送请求到后台,后台根据ID删除对应的...
- **社区支持**:jqGrid有活跃的社区和丰富的文档,遇到问题时更容易找到解决方案。 4. **应用场景** - **Web应用**:在企业级Web应用中,jqGrid常用于后台管理系统,展示和处理大量业务数据。 - **数据分析**:...
jqGrid提供了编辑、添加、删除和保存功能,可以通过设置`editurl`和`onEdit`、`onSave`等事件实现。 2. **自定义列**:除了预定义的列属性外,还可以通过`formatter`和`unformatter`定义自定义的列显示和输入格式。...
对于更复杂的编辑场景,可以利用`navGrid`方法添加编辑、添加、删除和查看等导航按钮。 为了实现数据的保存,我们需要定义`saveRow`和`editRow`方法。这些方法会在用户完成编辑并提交时调用,负责将更改发送到...
2. **示例和文档**:通常会有多个示例文件夹,展示不同功能的使用方法,以及详细的API文档,帮助开发者了解如何配置和调用jqGrid的各种功能。 3. **语言文件**:包含不同语言的翻译文件,用于实现多语言支持。 4. ...
4. 调用jqGrid方法,如`$("#gridId").jqGrid()`启动插件。 五、进阶应用 1. **小工具栏**:通过插件实现自定义工具栏,如新增、删除、保存等操作按钮。 2. **树形视图**:支持树状数据结构展示,适用于层级关系的...
`delGridRow`方法用于标记一行为待删除状态,然后调用`delRowData`或执行服务器请求来实际删除数据。同样,也需要处理服务器的反馈。 6. **事件处理**:在编辑和删除过程中,jqGrid触发多种事件,如`...
7. **MVC设计模式**:尽管没有明确提及,但通常在Servlet应用中,Model(模型)代表业务逻辑和数据,View(视图)是用户界面,Controller(控制器)处理用户请求并调用模型方法。jqGrid可以视为视图的一部分,...
7. **methods32.js**: 这可能是一个包含jqGrid方法的JavaScript文件,例如排序、编辑、删除、加载数据等操作。开发者可以通过调用这些方法来控制jqGrid的行为。 8. **jqgrid.html**: 这是最核心的文件,可能包含了...
文件上传成功后,你需要在服务器上选择一个合适的位置来保存文件。这可能涉及到文件路径管理、权限控制以及防止重复文件的问题。 - **返回响应** 服务器需要返回一个确认消息,告知前端文件已成功保存。这个消息...
编辑完成后,通过调用`saveRow`或`editRow`方法,将更改保存到服务器。在这个过程中,通常需要定义一个服务器端的处理函数来接收和处理更新的数据。 对于数据删除,jqGrid提供了一个`delRowData`方法,可以直接根据...
在使用jqGrid这种基于JavaScript的表格插件时,开发者可能会遇到一种常见的问题,即在进行异步加载数据(如翻页或搜索)时,用户选定的行数据在切换页面后会丢失,导致无法进行批量操作,如批量删除。这是因为jqGrid...
4. 调用jqGrid的API方法实现各种操作,如加载数据、刷新表格、编辑记录等。 例如,基本的HTML结构可能如下: ```html <table id="jqGrid"> <div id="gridpager"></div> ``` 然后在JavaScript中初始化jqGrid: ``...