I have been using postData
to set the request params dynamically. On click of some external button, I change the grid URL and also set some additional params in postData
like below. JqGrid seems to append all these params and it's data for all the subsequent requests. Is there a way we can control or avoid these params being sent every time?
My grid definition:
jQuery(function() {
$('#grid').jqGrid({
url: 'rates.html',
postData: {
name: function() { return $("#name").val(); },
rate: function() { return $("#rate").val(); },
.....
}
....
});
});
Here in the post request: I see that name
, rate
params are going along with other standard jqGrid parameters like sortname
, sidx
, rows
, etc...
Now if on click of an external button, if I change the grid URL like below
$('#changeReqBtn').click(function() {
$('#grid').setGridParam({ url: 'changeReq.html',
postData: { msgIds: msgIds } });
$('#grid').trigger("reloadGrid");
});
Now jqGrid sends name
, rate, msgIds
params
Now if I change the URL back to rates.html say for example, on click of refresh icon, jqGrid sends the previous msgIds
param and also the previous values. I don't want to send the previous request params in the new request when the URL changes. Is there a way we can achieve this?
If I correct understand your problem you should avoid usage of setGridParam
and do the following instead. You can use $('#grid').jqGrid("getGridParam", "postData")
to get the reference to the internal parameter postData
. For example,
var myPostData = $('#grid').jqGrid("getGridParam", "postData");
So you can use delete myPostData.msgIds
to delete any property of the method previously added by setGridParam
.
I had the same issue of preserving postdata parameters from previous requests.
I fixed it by clearing postData first and then setting postData with new parameters.
clearing postData => $('#grid1').setGridParam({ postData: ""});
setting postData with new parameters =>
var formValues = {searchVal: "abc", country: "US"} $('#grid1').setGridParam({ postData: formValues});
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With