这次的总结是针对于一次bug,先说下我们遇到的问题,就是后台人员告诉我们添加数据到100条数据的时候,101条就看不到,当时我觉得就是没有分页的原因,所以我就以为在jqgrid中设置一个loadonce就行了。这样设置之后,确实可以翻页了。但是等到翻到第二页的时候,我们的数据有很多报错了,全是underfind,这个时候就可以看出来是formatter这个没有起作用,然后我研究了好久,确实没有找到有用的方法,(如果大家有办法的话,可以给我留言)那只能曲线救国了。

  就是使用jquery的ajax请求回来数据之后,然后在设置jqgrid中的data为本地的数据,这样。请看下面的代码:

 var mydata = "";//获取到的全部的数据
var this_page = 1;//当前的页数
 function load_data_again(){ //重新加载数据
jQuery("#table_list_1").jqGrid("clearGridData"); console.log("当前的页数:",this_page)
$.ajax({
url: "{:url('relatives_friends_list')}",
data:{
bind_type:3
},
success:function(data){
if(data){
mydata = data;//mydata为全局变量,这个是为了赋值数据用的
$("#table_list_1").jqGrid('setGridParam', {
data:mydata,
page:this_page,//这个也是全局的变量,这个会在loadComplete之后获取到当前的页面
}).trigger("reloadGrid");
}
}
})
}

在程序中已经写的比较明白了,就是mydata为全局变量,为了存储获取到的数据,this_page为当前页面的页面,这个主要是为了判断当前是在哪个页面。在下面我会jqgrid中的

loadComplete

代码放在下面

 loadComplete:function(t){
  this_page = $('#table_list_1').getGridParam('page'); // current page
}

近期又做了一个功能,就是需要检查登录是否失效,这个时候,就需要判断jqgrid请求的ajax是否登录失效了。请看下面的代码

 ajaxGridOptions:{
complete: function (XMLHttpRequest, textStatus) {
var dataJson = JSON.parse(XMLHttpRequest.responseText);
if(dataJson.errorCode!=0 && dataJson.msg){
alert(dataJson.msg);
jump_login(dataJson);
}
}
}

这里面是请求ajax的时候的全部参数,大家可以自行的打印XMLHttpRequest查看其中的数据。这样以后就能判断了返回的值。我们是判断数据中,errorCode不等于0,且等于10000,然后进入这个jump_login的函数,跳转到登录的页面。大家如果有自己的需求同样可以做。(我们原来还做过一次,就是PHP直接来判断是否登录过期,然后跳转到登录页面的,但是这次不知道为什么,不可以了,所以就让前端来做)

jqGrid 常用 总结 -2的更多相关文章

  1. jqGrid 常用 总结 -1

    这篇文章是因为,我们在做的后台项目,里面有大量的表格统计,这个不可能自己手写,所以其中的表格使用的是jqgrid. 这个插件其实使用起来还是不错的,里面有很多的功能很赞.这篇博客就是自己的的一个记录, ...

  2. jqGrid常用属性和方法介绍

    jqGrid API中文手册:http://blog.mn886.net/jqGrid/ 一.jqGrid属性: width:Grid的宽度,如果未设置,则宽度应为所有列宽的之和:如果设置了宽度,则每 ...

  3. jqgrid常用操作

    .jqgrid控件列在需要的地方加上edittable=true <asp:JQGrid runat=" DataUrl="/ccr/CcrCompanyPromoterMa ...

  4. JQuery插件之【jqGrid】常用语法整理

    jqGrid常用语法整理,包含数据获取.常用函数.触发事件等 jqGrid表格数据获取相关语法 获取表格所有数据 $("#grid").jqGrid("getRowDat ...

  5. jqGrid使用经验分享(一)——jqGrid简单使用、json格式和jsonReader介绍

    广大的读者朋友们大家好,很高兴又可以在博客中和大家分享我的开发经验了. 此次,我准备向大家介绍一个非常好用的jQuery表格插件——jqGrid. 如果您在实际项目中遇到web端表格展示功能的需求,又 ...

  6. jqGrid 最常用的属性和事件,供平时参考(转)

    [html] <html> ... <table id="list1"></table> <div id="pager1&quo ...

  7. jqGrid合并表头

    jqGrid是一款常用的制表软件,最近开发刚好用到.记录一下常用功能留着以后查找顺便发扬一下开源精神. 二级表头是一种经常会碰到的需求,很多时候为了方便查找需要在原有的表头上再加一层,区分表格不同列的 ...

  8. jqGrid的autoencode参数设置为true在客户端可能引发的编码问题

    不久前使用jqGrid+MVC做过一段时间开发. 一开始,分页参数几乎都是默认值,jqGrid的分页功能很好用. 考虑到each input is evil,我们的系统对安全性又有较高要求,所以,为了 ...

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

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

随机推荐

  1. 第二届强网杯部分writeup

    MD5部分 第一题 一看就有些眼熟 emmmm 查看一下源代码: 重点是这里 这里面要求POST上去的参数 param1 != param2 && md5('param1') == m ...

  2. 集群搭建(一)克隆虚拟机静态IP设置

    [抛出问题] 当在搭建集群的时候,我们会将一个安装好相关程序的虚拟机进行克隆,克隆之后,我们会发下一些问题:就是原先的eth0 网卡不见了 原先的网卡 而克隆之后的网卡 会发现原来的网卡eth0 变为 ...

  3. 【转】搭建自己的 sentry 服务

    1. 安装 docker 首先要确认你的 Ubuntu 版本是否符合安装 Docker 的前提条件.如果没有问题,你可以通过下边的方式来安装 Docker : 使用具有 sudo 权限的用户来登录你的 ...

  4. Struts2中的值栈

    一 什么是值栈 值栈: struts2中提供的一种类似于域对象的工具, 用于struts2中的存值和取值. 每次访问Action的时候, 都会创建一个action对象, 而每个action对象中都存在 ...

  5. java正则表达式验证金额

    String reg_money = "\\d+(\\.\\d{1,2})?";// 金额正则,可以没有小数,小数最多不超过两位 Pattern pattern = Pattern ...

  6. 传统IT公司/创业公司/互联网大公司的offer如何选择?[转载+原创]

    背景介绍: 第一家工作的公司是一家跨国外企安全公司, 骄傲的称自己不是互联网公司而是传统软件公司, 第二家公司是当下最热的知识分享社区, 创业公司. 第三家公司是挤走谷歌, 曾一度称霸中国的搜索引擎公 ...

  7. nodejs模块xml2js解析xml的坑

    在一个项目中,用到nodejs模块xml2js解析xml,xml的数据如下: <xml> <MsgId>6197906553041859764</MsgId> &l ...

  8. 剑指offer(javascript实现)

    1.二维数组中的查找 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. funct ...

  9. MassTransit 实现发布/订阅

    MassTransit 介绍  先看下masstransit 官网介绍:MassTransit 是一个自由.开源.轻量级的消息总线, 用于使用. NET 框架创建分布式应用程序.MassTransit ...

  10. 关于MySQL的1064错误

    MySQL的1064错误是SQL语句写的有问题时出现的,即SQL的语法错误.笔者常常使用MySQL-python这个库来对MySQL进行操作,代码中报这个错误的一般是cursor.execute(sq ...