在一次项目中想从后台自定义一些返回值传回jqGrid,所以就想到了jqGrid的这个userData属性,但是真的是坑了我好惨,这里记录一下!

1、首先看说明,这个jsonReader的默认配置,userdata:'userdata'

 1 jsonReader : {
root: "rows", // json中代表实际模型数据的入口
page: "page", // json中代表当前页码的数据
total: "total", // json中代表页码总数的数据
records: "records", // json中代表数据行总数的数据
repeatitems: true, // 如果设为false,则jqGrid在解析json时,会根据name来搜索对应的数据元素(即可以json中元素可以不按顺序);而所使用的name是来自于colModel中的name设定。
cell: "cell",
id: "id",
userdata: "userdata",
subgrid: {
root:"rows",
repeatitems: true,
cell:"cell"
}
}

2、在使用过程中,最开始我是这样使用的,

//在后台,我自己定义了几个求和数值放在了一个叫userdata的对象中,这个时候,我是没有修改jsonReader的默认配置,也就是说userdata是'userdata',
//我这里起的名字是userdata,跟jsonReader配置的名字一样
var result = new
{
currentPage = request.page,
totalPages = request.totalPages,
totalCount = request.totalCount,
rows = resultList,
//求和 自定义jqGrid返回参数
userdata = new
{
sumWeight = request.SumWeight,
sumIncome = request.SumIncome,
sumQuantity = request.SumQuantity
}
};
//在前台,我想这么取出来,失败
var userData = $("#gridList").jqGrid('getGridParam').userdata;

3、总结!

  结果,当然是成功取出来了,经过了F12的好一顿乱搞,我终于发现,在$("#gridList").jqGrid('getGridParam')中,有一个userData属性,这个属性名是固定的就是大写,它存放的值就是jsonReader中的那个userdata:'userdata'的值,在这里默认是小写的userdata,其实这个设置,只是跟你在后台起对象名有关系,比如,你这里默认是userdata,那么你在后台想用userdata的时候,你就必须也用userdata,这俩必须一一对应,然后。重要的事情说三遍!!!嗯就是三个!!!,这个时候,我以为在取值的时候,这么取了

var userData = $("#gridList").jqGrid('getGridParam').userdata;

结果,不对!,其实在取值的时候呢,是用的$("#gridList").jqGrid('getGridParam')自己固定的一个属性,它就叫userData,!!!不管你在jsonReader中起了什么狗名字userdata 也好,xxxfs也罢,只有你在后台存放数据的时候,名字跟这个一致就可以!但是,在取值的时候,就是用.userData就好了!!!

jqGrid的userData的用法!!!的更多相关文章

  1. Jqgrid的用法总结与分页功能的拓展

    这是本人写的第一个与技术相关的博客,但是非挑战技术的,而是对工作的总结,另外加一点点拓展. Jqgrid的功能十分强大,强大到可以做到与数据grid相关的任何功能,同时由于在用的过程中总是不能够一气呵 ...

  2. jqGrid基本用法与示例

    转自:https://chuanlu.iteye.com/blog/1953544 一.jqGrid的基本用法 1.html页面 <!DOCTYPE html PUBLIC "-//W ...

  3. MVC中Jqgrid的用法

    Jqgrid可以接受的数据源格式通常是local.json.string等,而我们通过MVC Controller查询数据库(Linq)通常转化为tolist(),例如: public object ...

  4. jqGrid用法汇总(全经典)

    1.支持多种类型的数据集合作为数据源 $("#grid1").jqgrid( ........ datatype: "xml", ........ ); XML ...

  5. tab页以及jqgrid某些用法参考记录

    <%@ Page Language="C#" AutoEventWireup="True" CodeBehind="CcrCreditHuman ...

  6. Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数、ColModel API、事件及方法

    系列索引 Web jquery表格组件 JQGrid 的使用 - 从入门到精通 开篇及索引 Web jquery表格组件 JQGrid 的使用 - 4.JQGrid参数.ColModel API.事件 ...

  7. jqGrid APi 详解

    jqGrid APi 详解 jqGrid皮肤 从3.5版本开始,jqGrid完全支持jquery UI的theme.我们可以从http://jqueryui.com/themeroller/下载我们所 ...

  8. Jqgrid学习API

    JQGrid是一个在jquery基础上做的一个表格控件,以ajax的方式和服务器端通信. JQGrid Demo 是一个在线的演示项目.在这里,可以知道jqgrid可以做什么事情. 下面是转自其他人b ...

  9. 【转】jqGrid 各种参数 详解

      [原文]http://www.cnblogs.com/younggun/archive/2012/08/27/2657922.htmljqGrid 各种参数 详解 JQGrid JQGrid是一个 ...

随机推荐

  1. Centos6.8 搭建Nginx服务器

    Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器,其特点是占有内存少,并发能力强,业界内的评价一直很不错,反正用过的都说好,虽然我还 ...

  2. nodejs----初期学习笔记

    //一 回调函数 //require---命令//Node 使用了大量的回调函数,Node 所有 API 都支持回调函数.//例如,我们可以一边读取文件,一边执行其他命令,在文件读取完成后,我们将文件 ...

  3. django模板语言循环字典,及forloop

    views: from django.shortcuts import render,redirect from django.shortcuts import HttpResponse # Crea ...

  4. Django2.0资料

    The Django Book 2.0 中文版:点击下载 Django课件和代码:点击下载

  5. https://api.highcharts.com/gantt/

    <a href="https://api.highcharts.com/gantt/">https://api.highcharts.com/gantt/</a& ...

  6. 动态规划经典——最长公共子序列问题 (LCS)和最长公共子串问题

    一.最长公共子序列问题(LCS问题) 给定两个字符串A和B,长度分别为m和n,要求找出它们最长的公共子序列,并返回其长度.例如: A = "HelloWorld"    B = & ...

  7. Python撰写mail

    版本1   指定邮箱进行发送 """ 说明:指定账户密码进行邮件发送 由312051952@qq.com-->c4kaichen@163.com "&qu ...

  8. AI与RPA

    RPA(机器人流程自动化)是一类自动化软件工具,它可以通过用户界面使用和理解企业已有的应用,将基于规则的常规操作自动化,例如读取邮件和系统,计算,生成文件和报告,检查文件等.因此,RPA的应用范围非常 ...

  9. Solr——配置IK分词器

    首先需要的准备好jdk1.8和tomcat8以及ik分词器(ik分词器是5.x的版本,和solr4.10搭配的版本不一样,虽然是5.x的版本但是也是能使用在solr7.2版本上的) 分享链接https ...

  10. 有哪些你不知道的python小工具

    python作为越来越流行的一种编程语言,不仅仅是因为它语言简单,有许多现成的包可以直接调用. python中还有大量的小工具,让你的python工作更有效率. 1.- 快速共享 - HTTP服务器 ...