var searchClick=false;//判断是否是第一次点击搜索
//当搜索按钮被单击时触发
function searchData(){
//创建jqGrid组件
console.log('正在搜索');
var ele=jQuery('#searchForm'); var search='';
var searchArr=[];
for(item in ele[0]){
if(ele[0][item]!==null&&ele[0][item].name!==undefined&&ele[0][item].value!=undefined&&ele[0][item].name.length>0){ // if(ele[0][item].type.indexOf('checkbox')>-1){//如果是复选框 // search.length<1?(search=ele[0][item].name+'='+ele[0][item].checked):(search+='&'+ele[0][item].name+'='+ele[0][item].checked);
// searchArr[ele[0][item].name]=ele[0][item].checked;
// }else{
search.length<1?(search=ele[0][item].name+'='+ele[0][item].value):(search+='&'+ele[0][item].name+'='+ele[0][item].value);
searchArr[ele[0][item].name]=ele[0][item].value;
//} }
} if(!searchClick){ jQuery("#tableDataSearch").jqGrid(
{
url : 'url?'+search,//组件创建完成之后请求数据的url
datatype : "json",//请求数据返回的类型。可选json,xml,txt
overrite : true,
colNames : ['单号','金额','预约单号','日期','提成金额','是否退单'],//jqGrid的列显示名字
colModel: [ //jqGrid每一列的配置信息。包括名字,索引,宽度,对齐方式.....
{name: 'HBillNum',index: 'HBillNum',width:85,editable: false},
{name: 'HAmount',index: 'HAmount',width:85,editable: false},
{name: 'HOrderNo',index: 'HOrderNo',width:85,editable: false},
{name: 'HBillDate',index: 'HBillDate',width:85,editable: false},
{name: 'Commission',index: 'Commission',width:85,editable: false},
{name: 'Hredordernum',index: 'Hredordernum',width:85,editable: false},
],
height:'600',
width:window.screen.availWidth-400,
viewrecords: true,//是否在浏览导航栏显示记录总数
rownumbers:true,
rowNum : 10000,
pager : '#paper2',
sortname:'HBillDate',//默认的排序列名
sortorder : "desc",
//autowidth:true,
footerrow:true,
onSelectRow:function(id){
currentSelectedRecord={'HBillNum':jQuery(jQuery('#'+id)[0]['innerHTML'])[1].innerHTML,
};
},
loadComplete: function() { var grid = $("#tableDataSearch");
var ids = grid.getDataIDs();
if($(this).getGridParam('userData') == 'ceod1'){
$.messager.alert('提示','请把线上小程序的APPid填上');
}else if(ids.length < 1){
$.messager.alert('提示','"未查到所符合数据');
} for (var i = 0; i < ids.length; i++) {
grid.setRowData ( ids[i], false, {height: 25} );
}
//数据汇总
var HAmount=parseFloat(jQuery(this).getCol('HAmount', false, 'sum')).toFixed(2);
var Commission=parseFloat(jQuery(this).getCol('Commission', false, 'sum')).toFixed(2);
$(this).footerData("set", {rn:'合计', HAmount:HAmount,Commission:Commission,});
}
}).trigger("reloadGrid"); test='';
/*创建jqGrid的操作按钮容器*/
/*可以控制界面上增删改查的按钮是否显示*/
jQuery("#tableDataSearch").jqGrid('navGrid', '#paper2', {edit : false,add : false,del : false});
searchClick=true;
}else{
var params={};
Object.assign(params,searchArr); var postData = $('#tableDataSearch').jqGrid("getGridParam", "postData");
$.each(postData, function (k, v) {
delete postData[k];
});
jQuery("#tableDataSearch").jqGrid('setGridParam', {
url:'url?'+search,
datatype:'json',
postData: postData,
page: 1
}).trigger('reloadGrid'); }
return false;
}

出现这种问题一开始以为是缓存之类的东西,但是后台经过查询发现这个应该是jqgrid组件的BUG,jqgrid的方法 setGridParam方法自身会累加postdata的值”,需要像清空属性那样(delete property_name)清空上次请求参数才行。

我的方法

var postData = $('#tableDataSearch').jqGrid("getGridParam", "postData");
$.each(postData, function (k, v) {
delete postData[k];
});

jqgrid点击搜索无法重置参数问题的更多相关文章

  1. jqgrid后台处理搜索

    jqgrid后台处理搜索, 如果点击jqgrid自带的搜索,则向后台传递“_search”参数,和searchField.searchOper.searchString三个值.如下所示: string ...

  2. 利用referer属性,记录百度搜索跳转参数

    从百度搜索结果跳转到指定链接前,百度会发送一些参数,可以利用referer属性,在本站访问时记录百度跳转来之前的一些参数. 利用百度跳转前参数,进行一些相关的seo优化. 目前所用到的一些参数说明如下 ...

  3. 【代码笔记】iOS-点击搜索按钮,或放大镜后都会弹出搜索框

    一, 效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> #import "CLHSearchBar.h ...

  4. IOS UISearchDisplayController 点击搜索出现黑条问题解决方案

    最近项目遇到一个很奇葩的问题 点击按钮启动 presentViewController 的时候出现下图效果: 代码: AddFriendViewController *addFriendVC = [[ ...

  5. button点击传多个参数

    // --------------------button点击传多个参数------------------------ UIButton *btn = [UIButton buttonWithTyp ...

  6. 在iOS中,实现点击搜索结果隐藏搜索结果的方法。

    不知道有没有别的什么的好的方法,最近在实现一个需求(点击搜索,然后输入搜索内容,显示搜索出来的结果,然后点击搜索结果,在当前页面显示所点击的结果的详细的信息).遇到的问题是,点击搜索结果的时候,搜索的 ...

  7. [原]用WebBrowser组件模拟人工运行搜索引擎自动点击搜索结果的实验

    本代码只是业余时间无聊写着试试,用WebBrowser组件模拟人工运行搜索引擎自动点击搜索结果的实验 这是网络中盛传的提高搜索引擎点击率的一种方式,当然属于作弊,不推荐各位使用.另外这种方式的性能不佳 ...

  8. 点击搜索取消UISearchDisplayController的搜索状态

    一般,我们用到UISearchDisplayController的时候,都是须要对一个数据源进行刷选,在UISearchDisplayController自带的tableView中展示出来,然后点击退 ...

  9. 点击搜索条件提交form表单

    思路:点击搜索,javascript跳转提交方法,提交整个表单. //组员下拉框选择分组事件 $('#s-member').change(function(){ $('#logForm').submi ...

随机推荐

  1. 2018-2019-2 20165312《网络攻防技术》Exp2 后门原理与实践

    2018-2019-2 20165312<网络攻防技术>Exp2 后门原理与实践 课上知识点梳理总结 1.后门的概述 后门是指不经过正常认证流程而访问系统的通道 两个关键词:未认证.隐通道 ...

  2. dll导出函数的两种方式的比较

    最初的网页链接已经挂了, 在此贴一个中间的转载链接 https://blog.csdn.net/zhazhiqiang/article/details/51577523 一 概要 vs中导出 dll的 ...

  3. JSP的三个脚本元素

    JSP的脚本:JSP定义Java代码的方式 1. <% 代码 %>:[脚本段:java程序段]定义的java代码,在service方法中.service方法中可以定义什么,该脚本中就可以定 ...

  4. [STM32F103]RTC日历

    使能PWR和BKP时钟: a) RCC_APB1PeriphClockCmd(); 使能后备寄存器访问: a) PWR_BackupAccessCmd(); 配置RTC时钟源,使能RTC时钟: a)  ...

  5. 关于Jupyter Notebook快捷操作

    Jupyter Notebook 的快捷键 Jupyter Notebook 有两种键盘输入模式.编辑模式,允许你往单元中键入代码或文本:这时的单元框线是绿色的.命令模式,键盘输入运行程序命令:这时的 ...

  6. mybatis入门篇:代码生成器(MyBatis Generator)

    这篇文章只是按照自己的需要去配置代码生成器,未对所有配置进行讲解,需要了解具体详情的,请到官网查阅文档.传送门:http://www.mybatis.org/generator/ 1.首先引入相关的依 ...

  7. PG数据基本命令——连接(笔记)

    在PostgreSQL中,有以下类型的连接: 内连接(INNER JOIN) 左外连接(LEFT OUTER JOIN) 右外连接(RIGHT OUTER JOIN) 全连接(FULL OUTER J ...

  8. DNS的功能-域名空间、域名注册和域名解析

    DNS的主要功能包括以下三个: 域名空间:定义一个包括所有可能出现的主机名字的域名空间. 域名注册:保证每台主机域名的唯一性. 域名解析:提供一种有效的域名与IP地址转换机制. DNS域名空间 (1) ...

  9. Springboot项目读取resource下的静态资源方法

    如果按相对路径直接读会定位到target下,因为springboot打包后读到这里 如果做单元测试的话是找不到文件的 File jsonFile = ResourceUtils.getFile(&qu ...

  10. 500G !!史上最全的JAVA全套教学视频网盘分享 (JEECG开源社区)

    500 G JAVA视频网盘分享(JEECG开源社区) [涵盖从java入门到深入架构,Linux.云计算.分布式.大数据Hadoop.ios.Android.互联网技术应有尽有] JEECG开源社区 ...