博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
jqGrid细节备注—jqGrid中自定义格式,URL格式
阅读量:5731 次
发布时间:2019-06-18

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

本文来自:http://cnn237111.blog.51cto.com/2359144/782137

jqGrid中自定义格式,URL格式当官方自带的showlink用起来不是十分顺手,因此可以考虑自己定义url格式自定义格式其实很简单,在formatter:处填写函数名比如formatter:makeURL那么,可以创建一个makeURL函数。该函数的签名必须遵循官方的约定,有3个参数。function makeURL(cellvalue, options, rowObject ){return urlstring;}cellvalue -就是要被格式化的值options - 一个对象,包含的值是options : { rowId: rid, colModel: cm} rowId就是当前行的rowid,colModel就是jqgrid中定义的值rowObject - 就是当前行的值。各个值的赋值举例如下:如果:colModel: [{ name: "filename", index: "filename", 550, sorttype: "string", sortable: true,formatter:makeURL},{ name: "datetime", index: "datetime", 80, sorttype: "string", formatter: "string", sortable: true }],function makeURL(cellvalue, options, rowObject ){alert(cellvalue);alert(rowObject["test"]);//此处的值为返回的json中对应的值。alert(options["rowId"]);alert(options["colModel"]["name"]);//此处返回的就是“filename”}有了这一招,返回一些自定义的URL就易如反掌,随便加什么参数都可以很容易的获得,只需要能从rowObject["test"]之类的对象中取到数据即可。还有一种更加简单直白的方式,就是直接在返回的json中,把要显示的字段直接用处理过的这种格式处理。那样的话,直接在表格里显示的就是已经可以直接使用的链接了。

 ------------------------------------------------------------------------------------------------------------------

这是我在实际中应用到的

场景:aliasName列的数据没有在第一次ajax请求返回数据中,需要根据第一次ajax请求返回数据中本行typesId列中的值来再一次调用ajax请求获得aliasName列的值

colNames:[                                '
票据类型编码
', '
票据类型名称
', '
开始票据号
', '
截止票据号
', '
票据张数
', '
状态
', '
创建人
', '
创建时间
', '
id
', '
内部单位Id
', '
关联总库Id
', ],         colModel:[ {name:'typesId',index:'typesId', width:'50',align:"center",key:true},             {name:'aliasName',index:'aliasName', width:'50',align:'center', formatter:function(cellValue,options,rowObject){ /*根据本行数据中的typesId列的值来ajax请求,得到本列的中的值*/ $.ajax({ url:"${staticServer}/ywgl/ywcsgl/pjzlgl/selectBillTypeByTypesId.htm", type:"POST", async:false, datatype:"json", data:{ typesId : rowObject.typesId //rowObject.typesId是获取typesId列的值 }, success:function(data){ cellValue=data[0].aliasName; } }); return cellValue; } },     {name:'startTypeno',index:'startTypeno', width:'50',align:"center"}, {name:'endTypeno',index:'endTypeno', width:'50',align:"center"}, {name:'typeNumber',index:'typeNumber', width:'50',align:"center"}, {name:'status',index:'status', width:'50',align:"center", formatter:function(cellValue){ if(cellValue==1){ return "未复核"; }else{ return "已复核"; } } }, {name:'inputUser',index:'inputUser', width:'50',align:"center", formatter:function(cellValue){ $.ajax({ url : "${staticServer }/ywgl/zkpzgl/zkfkgl/getInputName.htm", type : "post", async:false, data : { id : cellValue }, dataType : "json", success : function(r){ if(r == null || r == ""){ cellValue = '无'; }else{ cellValue = r[0].user_name; } } }); return cellValue; } },             {name:'inputTime',index:'inputTime', width:'50',align:"center"}, {name:'id',index:'id', width:'50',align:"center",hidden:true}, {name:'unitId',index:'unitId', width:'50',align:"center",hidden:true}, {name:'allId',index:'allId', width:'50',align:"center",hidden:true}         ],

 

转载于:https://www.cnblogs.com/pzx-java/p/7435238.html

你可能感兴趣的文章
Silverlight 2.5D RPG游戏“.NET技术”技巧与特效处理:(十二)魔法系统
查看>>
[NPM] Run npm scripts in series
查看>>
vs2013修改书签(vs书签文件位置)
查看>>
BZOJ 1923: [Sdoi2010]外星千足虫 [高斯消元XOR]
查看>>
C语言学习笔记
查看>>
PHP 命令行模式实战之cli+mysql 模拟队列批量发送邮件(在Linux环境下PHP 异步执行脚本发送事件通知消息实际案例)...
查看>>
PS 如何使用液化工具给人物减肥
查看>>
cvc-complex-type.2.4.c: The matching wildcard...
查看>>
android 读取json数据(遍历JSONObject和JSONArray)
查看>>
pyjamas build AJAX apps in Python (like Google did for Java)
查看>>
<JavaScript语言精粹>-读书笔记(一)
查看>>
NPM教程
查看>>
Java学习笔记(40)——Java集合12之fail-fast
查看>>
Centos 配置IP的方式
查看>>
Go 的吉祥物,萌不萌
查看>>
【iOS】AFN网络请求通过获取cookies保持会话
查看>>
Java 的swing.GroupLayout布局管理器的使用方法和实例
查看>>
Android中Activity和Fragment的生命周期的对比
查看>>
C++Primer_笔记_异常处理
查看>>
分区交换 alter table exchange partition 在线表 历史表交换
查看>>