jqgrid setGridParam方法设置postData参数值累加问题

做项目前端用到jqgrid表格,最近要做获取es数据排序 显示在表格,就需要点击表头进行正序倒序排列。

这个过程中遇到了一个问题,点击多个表头切换排序的列,应该直传最近点击列相关的参数到后台,但实际遇到把前面累计点击的所有列参数传到了后台。

找了很长时间原因,最后发现是jqgrid的方法 setGridParam方法自身会累加postdata的值

这里解决办法是:在调用setGridParam设置postdata值之前先清空表格postData属性的值

                  $('#jqGrid').jqGrid('clearGridData');  //清空表格  数据
			 	    
			 	    /*
			 	    * 先清空条件
			 	    * jqgrid postData setGridParam 调用多次时查询条件会累加
			 	    */
		    var postData = $('#jqGrid').jqGrid("getGridParam", "postData");
                    $.each(postData, function (k, v) {
                        delete postData[k];
                    });                    
					jqGridOptions.postData["sort"]=sort;
					$('#jqGrid').setGridParam({postData:jqGridOptions.postData}).trigger("reloadGrid");

jqGridOptions是保留的表格参数集合

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值