这次的总结是针对于一次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. Java面向对象(一、封装)

    Java 封装 封装的概念 在面向对象程式设计方法中,封装(英语:Encapsulation)是指一种将抽象性函式接口的实现细节部份包装.隐藏起来的方法. 封装可以被认为是一个保护屏障,防止该类的代码 ...

  2. 安装SQL Server DQS 和 MDS

    tep1:   安装特性时选择Data Quality Services 和 Master Data Services Step2:  安装完成之后, 打开 SQL Server 2017 Data ...

  3. Rocketmq 集群

    写在前面 Rocketmq采用apache rockemq 4.2.0release版本. 源码路径(http://mirrors.shu.edu.cn/apache/rocketmq/4.2.0/r ...

  4. TensorFlow-谷歌深度学习库 文件I/O Wrapper

    这篇文章主要介绍一下TensorFlow中相关的文件I/O操作,我们主要使tf.gfile来完成. Exists tf.gfile.Exists(filename) 用来判断一个路径是否存在,如果存在 ...

  5. css的input文本框的 propertychange、focus、blur

    1.输入框检查的需求--即时搜索--解决方案 当input的value发生变化就会发生,无论是键盘输入还是鼠标黏贴的改变都能及时监听到变化,propertychange,只要当前对象属性发生改变.(I ...

  6. jndi通俗理解以及它的指令缺陷

    jndi(java naming directory interface),可以把JNDI看成一个全局的目录服务接口,实现了这个接口的类可以提供你想要的东西,不管这个东西是什么,只要注册到了目录中就可 ...

  7. 注解@EnableDiscoveryClient,@EnableEurekaClient的区别

    SpringCLoud中的"Discovery Service"有多种实现,比如:eureka, consul, zookeeper. 1,@EnableDiscoveryClie ...

  8. java虚拟机的内存分配

    java程序在执行时,jvm的内存执行方案.

  9. SSM-SpringMVC-24:SpringMVC异常高级之自定义异常

    ------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 自定义异常,大家都会,对吧,无非就是继承异常类等操作,很简单,我就不多扯皮了,但是在xml配置文件中有个不同的 ...

  10. Node.js使用supervisor遭遇‘supervisor’不是内部或外部命令,如果解决?

    如果你有 PHP 开发经验,会习惯在修改 PHP 脚本后直接刷新浏览器以观察结果,而你 在开发 Node.js 实现的 HTTP 应用时会发现,无论你修改了代码的哪一部份,都必须终止 Node.js ...