本文来自: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中,把要显示的字段直接用处理过的<A>这种格式处理。那样的话,直接在表格里显示的就是已经可以直接使用的链接了。

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

这是我在实际中应用到的

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

colNames:[
'<div align="center">票据类型编码</div>',
'<div align="center">票据类型名称</div>',
'<div align="center">开始票据号</div>',
'<div align="center">截止票据号</div>',
'<div align="center">票据张数</div>',
'<div align="center">状态</div>',
'<div align="center">创建人</div>',
'<div align="center">创建时间</div>',
'<div align="center">id</div>',
'<div align="center">内部单位Id</div>',
'<div align="center">关联总库Id</div>',
],
        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}
        ],

jqGrid细节备注—jqGrid中自定义格式,URL格式的更多相关文章

  1. JSON.net 在实体类中自定义日期的格式

    定义日期格式转换类,其继承 IsoDateTimeConverter,代码如下: public class DateTimeConverter : IsoDateTimeConverter { pub ...

  2. jqgrid 对编辑行填写的内容做格式验证

    有时,我们需要在基于jqgrid表格编辑行的单元格做规范验证.jqgrid提供有支持,通过设置字段的editrules属性来约束格式. 约束方式: 1.内置的约束参数 (required: true, ...

  3. 【转】浏览器中的data类型的Url格式,data:image/png,data:image/jpeg!

    所谓"data"类型的Url格式,是在RFC2397中 提出的,目的对于一些"小"的数据,可以在网页中直接嵌入,而不是从外部文件载入.例如对于img这个Tag, ...

  4. 浏览器中的data类型的Url格式,data:image/png,data:image/jpeg!(源自:http://blog.csdn.net/roadmore/article/details/38498719)

    所谓"data"类型的Url格式,是在RFC2397中 提出的,目的对于一些“小”的数据,可以在网页中直接嵌入,而不是从外部文件载入.例如对于img这个Tag,哪怕这个图片非常非常 ...

  5. Excel 2007中自定义数字格式前要了解的准则

    要在Excel 2007中创建自定义数字格式,首先应了解自定义数字格式的准则,并从选择某一内置数字格式开始.然后,可以更改该格式的任意代码部分,从而创建自己的自定义数字格式. 数字格式最多可包含四个代 ...

  6. 3.自定义返回json格式的数据给前台(自定义Controller类中的Json方法)

    在mvc的项目中,我们前台做一些操作时,后台要返回一些结果给前台,这个时候我们就需要有一个状态来标识到底是什么类型的错误, 例如: 执行删除的时候,如果操作成功(1行受影响),我们需要返回状态为1并输 ...

  7. web form中自定义HttpHandler仿mvc

    web form中自定义HttpHandler仿mvc 前言 在mvc大行其道的今天,仍然有不少公司的项目还是使用web form来实现的(其实mvc也是基于web form的),如果要在项目中引入m ...

  8. AngularJS中自定义有关一个表格的Directive

    本篇体验在AngularJS中自定义一个有关表格的Directive.表格的需求包括: ● 表格结构 <table>    <thead>        <tr>  ...

  9. AngularJS路由系列(2)--刷新、查看路由,路由事件和URL格式,获取路由参数,路由的Resolve

    本系列探寻AngularJS的路由机制,在WebStorm下开发.主要包括: ● 刷新路由● 查看当前路由以及所有路由● 路由触发事件● 获取路由参数 ● 路由的resolve属性● 路由URL格式 ...

随机推荐

  1. 第十篇.1、python并发编程之多进程理论部分

    一 什么是进程 进程:正在进行的一个过程或者说一个任务.而负责执行任务则是cpu. 举例(单核+多道,实现多个进程的并发执行): egon在一个时间段内有很多任务要做:python备课的任务,写书的任 ...

  2. Addthis分享插件后url乱码的解决办法

    Addthis分享插件安装后,有时候URL后面会出现类似#.VB4mxhbjtnQ的一串乱码的乱码,作用是用来追踪客户客户,但是给客户的印象会以为木马中毒之类的 http://localhost/mi ...

  3. BZOJ 3876 统一下界上下界费用流

    //Mcmf LargeDumpling #include<iostream> #include<cstdio> #include<cstdlib> #includ ...

  4. cudaDeviceProp结构体

    struct cudaDeviceProp {char name[256];         //器件的名字size_t totalGlobalMem;    //Global Memory 的byt ...

  5. 浅析Java web程序之客户端和服务器端交互原理

    原文链接: https://www.iteye.com/topic/470019 1. 协议 a. TCP/IP整体构架概述 TCP/IP协议并不完全符合OSI的七层参考模型.传统的开放式系统互连参考 ...

  6. nginx理论基础

  7. Elasticsearch在Centos 7上的安装与配置

    https://segmentfault.com/a/1190000011899522 https://blog.csdn.net/xxxxxx91116/article/details/171362 ...

  8. 从hive中读取数据推送到kafka

    由python2.7语言实现的,包也比较旧了. # -*- coding: utf-8 -*- # Version: 1.0.0 # Description: py_Hive2Kafka2kafka ...

  9. hivesql之str_to_map函数

    str_to_map(字符串参数, 分隔符1, 分隔符2) 使用两个分隔符将文本拆分为键值对. 分隔符1将文本分成K-V对,分隔符2分割每个K-V对.对于分隔符1默认分隔符是 ',',对于分隔符2默认 ...

  10. Entity Framework Core 迁移命令

    Add-Migration init Update-Database init 修改model后,执行迁移的命令 更新数据库 每次更新都要{update}修改 Add-Migration {updat ...