jqgrid--自定义格式化

    jQuery("#grid_id").jqGrid({    
      
    ...    
      
       colModel: [     
      
          ...     
      
          {name:'price', index:'price', width:60, align:"center", editable: true, formatter:currencyFmatter},    
      
          ...    
      
       ]    
      
    ...    
      
    });    
      
         
      
    function currencyFmatter (cellvalue, options, rowObject)    
      
    {    
      
      // do something here    
      
       return new_format_value    
      
    }  

 

cellvalue:要被格式化的值
options:对数据进行格式化时的参数设置,格式为:
{ rowId: rid, colModel: cm}
rowObject:行数据

 

 

 

数据的反格式化跟格式化用法相似.

 

    jQuery("#grid_id").jqGrid({    
      
    ...    
      
       colModel: [     
      
          ...     
      
          {name:'price', index:'price', width:60, align:"center", editable: true, formatter:currencyFmatter, unformat:unformatCurrency},    
      
          ...    
      
       ]    
      
    ...    
      
    });    
      
         
      
    function currencyFmatter (cellvalue, options, rowObject)    
      
    {    
      
         
      
       return "$"+cellvalue;    
      
    }    
      
    function  unformatCurrency (cellvalue, options)    
      
    {    
      
         
      
       return cellvalue.replace("$","");    
      
    }    

 表格中数据实际值为123.00,但是显示的是$123.00; 我们使用getRowData ,getCell 方法取得的值是123.00。

 

 

创建通用的格式化函数

    <script type="text/javascript">    
      
    jQuery.extend($.fn.fmatter , {    
      
        currencyFmatter : function(cellvalue, options, rowdata) {    
      
        return "$"+cellvalue;    
      
    }    
      
    });    
      
    jQuery.extend($.fn.fmatter.currencyFmatter , {    
      
        unformat : function(cellvalue, options) {    
      
        return cellvalue.replace("$","");    
      
    }    
      
    });    
      
         
      
     </script>  

 

具体使用:

    jQuery("#grid_id").jqGrid({    
      
    ...    
      
       colModel: [     
      
          ...     
      
          {name:'price', index:'price', width:60, align:"center", editable: true, formatter:currencyFmatter},    
      
          ...    
      
       ]    
      
    ...    
      
    })  

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
要设置自定义返回数据格式,可以使用 jqGrid 的 `jsonReader` 属性。这个属性可以让你指定 jqGrid 所期望的 JSON 数据格式,从而让它正确地解析服务器返回的数据。 下面是一个示例: ```javascript $("#myGrid").jqGrid({ url: "myData.json", datatype: "json", jsonReader: { root: "rows", page: "page", total: "total", records: "records", repeatitems: false, id: "id" }, colNames: ["ID", "Name", "Email"], colModel: [ { name: "id", index: "id", width: 50 }, { name: "name", index: "name", width: 150 }, { name: "email", index: "email", width: 200 } ], rowNum: 10, rowList: [10, 20, 30], pager: "#myPager", sortname: "id", viewrecords: true, sortorder: "asc", caption: "My Grid" }); ``` 在上面的代码中,我们定义了一个 `jsonReader` 对象,它指定了 jqGrid 所期望的 JSON 数据格式。其中,`root` 属性指定了返回数据的数组名称,`page` 属性指定了当前页码,`total` 属性指定了总页数,`records` 属性指定了总记录数,`repeatitems` 属性指定了是否允许重复的属性名,`id` 属性指定了行的唯一标识符。 在服务器返回数据时,需要按照上面的格式组织数据,例如: ```json { "rows": [ { "id": 1, "name": "John Doe", "email": "john.doe@example.com" }, { "id": 2, "name": "Jane Smith", "email": "jane.smith@example.com" } ], "page": 1, "total": 1, "records": 2 } ``` 这样,当 jqGrid 解析返回数据时,就会按照我们指定的格式进行解析,从而正确地显示数据。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值