jqgrid postData post方式累加参数,缓存了原来…
2019-04-18 09:01:54来源:博客园 阅读 ()
今天做项目的时候发现一个问题,我们有一个筛选项,一个是VIP用户,一个是普通用户,还有一个是全部用户,首先看下我们的selection
<select name="" id="user_type"> <option value="">全部</option> <option value="1">VIP</option> <option value="2">普通</option> </select>
非常常用的一种格式,然后我们会做一个判断
1 var jqgrid_post_data = {};//最终向jqgrid传输的json数据 2 if($("#user_type").val()){ //如果有值的话,给json复制 3 jqgrid_post_data["user_type"] = $("#user_type").val(); 4 } 5 jQuery("#table_list_1").jqGrid("clearGridData"); 6 $("#table_list_1").jqGrid('setGridParam', { //重新请求参数 7 postData:jqgrid_post_data , 8 page:this_page, 9 }).trigger("reloadGrid");
但是这个我们发现了一个问题,就是在我们从vip和普通用户切换到全部数据之后,查询的还是上次的数据。
比如说我查了一次VIP的用户数据,然后我切换到了全部用户,这个时候jqgrid还是查询的VIP的用户,但是我们打印 jqgrid_post_data 的时候,这个里面是没有user_type属性的。经过查找,发现了是jqgrid缓存了参数。结果办法分为两种,一种是比较简单的,当我们选择全部用户的时候,把user_type设置为空
1 jqgrid_post_data["user_type"] = '';
第二种方法是看其他的博客了解到的,就是在reloadGrid之前,执行下面的函数,
1 var postData = $('#jqGrid').jqGrid("getGridParam", "postData"); 2 $.each(postData, function (k, v) { 3 delete postData[k]; 4 });
就是把原来的参数清理掉,然后在重新加载一遍数据。
原文链接:https://www.cnblogs.com/daniao11417/p/10727281.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:转:超级好用的流程图js框架
下一篇:RFID NFC
- http请求post,文件导出兼容IE10+ 2019-08-14
- jqgrid three 树形结构 2019-04-29
- JS form跳转到新标签页并用post传参 2019-04-26
- vue watch监听验证码时,axios延迟发送post请求。 2019-03-10
- 如何使用post请求下载文件 2019-02-28
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash