博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jqgrid saveRow 保存行 编辑数据向后台保存的使用
阅读量:7011 次
发布时间:2019-06-28

本文共 2213 字,大约阅读时间需要 7 分钟。

hot3.png

调用 saveRow 的时候,发现 后台保存成功了, 可是 前端 的 grid 没有把保存的内容给 刷新。 原来有回调的 方法的:

//第四步:定义保存操作,通过键值对把编辑的数据传到后台,如下    //{upperLimit: value1,lowerLimit:value2}     function saveParam(rowId) {          var parameter = {            url : "sensor/setParam", //代替jqgrid中的editurl            mtype : "POST",            extraparam : { // 额外 提交到后台的数据                    "param1" : "1",                    "param2" : "2"             },            successfunc : function(XHR) { //在成功请求后触发;事件参数为XHR对象,需要返回true/false;                alert(XHR.responseText);//接收后台返回的数据                if (XHR.responseText == "false") {                    alert("上限值不能小于下限值");                    return false; //返回false会使用修改前的数据填充,同时关闭编辑模式。                } else {                    alert("编辑成功");                    return true; //返回true会使用修改后的数据填充当前行,同时关闭编辑模式。                }              }//end successfunc         }//end paramenter        jQuery('#list').saveRow(rowId, parameter);    }

同时 我在使用的时候 , 发现 需要 额外 将 extraparam : // 额外 提交到后台的数据 这里 填写入。 如果不填的话。 前端并没有获取到 数据的。 特别是 后台 Java spirngmvc 使用 一个 实体接受的时候。 同时 jqgrid 某些 列,往往我们 都使用了 格式化了,估计传递到了 后台就 没有 获取到 对应该的 一些列的内容。因此 需要自己 手写入 额外的参数了。 就是 这里的参数 名称 和 原来 grid 列的名称 有相同, 也是会覆盖 原来的。 下面是我的使用 代码:

var savePostUrl = _ctxPath + "/pfmcePlan/hrEffPfmcePscore/pscore/save.do";            var extraparam = { mypsid: mypsid, title: title, type: type, hrEffPfmcePlaneecptId: hepPlaneecptid };            jQuery(grid_selector).jqGrid('saveRow', editRowid, saveCallbackGrid, savePostUrl, extraparam);            console.log('5555>>>>>>>>>');// 表格行 保存,回调function saveCallbackGrid(data) {    var result;    if (data.responseText) {        var resultString = data.responseText;        console.log('>>>>>>>>>' + resultString);        //string 转json         try {            result = JSON.parse(resultString);        } catch (e) {// 必须捕获异常,否则会报错的        }        console.log(result + '###>>>>>>>>>' + result.success);        if (result.success) {            showNotice(result.message);            return true;// 覆盖 原来表格的内容,        } else {            showError(result.message);            return false;        }    } else {        showError("保存失败");        return false;    }}

转载于:https://my.oschina.net/u/2419285/blog/855233

你可能感兴趣的文章
个体工商户注册流程
查看>>
浅析CSS——元素重叠及position定位的z-index顺序
查看>>
sed的常用命令总结(一)
查看>>
Unity3D 插件分享
查看>>
PHP编译错误:configure: error: xml2-config not found. Please check your libxml2 installation.
查看>>
Oracle 中的join
查看>>
我的友情链接
查看>>
MySQL索引原理及查询优化
查看>>
Linux操作系统之奥秘(第2版)
查看>>
我的友情链接
查看>>
Netty内存池之PoolArena详解
查看>>
Sepia Tone Effect(老照片特效)
查看>>
国土档案管理信息系统【档案著录】-地籍类档案著录
查看>>
Maven聚合模块与继承和Maven的生命周期
查看>>
通过Jenkins部署java项目
查看>>
Spring-如何给静态变量注入值
查看>>
ActiveMQ问题分析和解决
查看>>
Day-3 使用记事本编写第一个Java程序
查看>>
企业该如何选择邮件系统
查看>>
Tcl或sh调用 exec调用管道”|”和awk的注意事项 + shell返回值如何赋值给tcl变量
查看>>