我现在用的是JQSuite的Trirand.Web.MVC DLL我的jqGrid集成到我的MVC 3应用程序。
我使用的jqGrid的HTML帮助,所以在我看来,我有以下几点:
@Html.Trirand().JQGrid(Model.MyGrid, "Grid")
我知道我可以用下面的代码加载上的按钮点击我的网格:
$("#Grid").trigger("reloadGrid");
这将刷新网格,要求我在位指示代码指定设立jqGrid的操作方法。
我有我使用的搜索/过滤,这些获得通过的行动法测得的页面上的其他控件。
我发现setGridParam方法,这似乎表明,你可以这样做:
$("#Grid").setGridParam({ someParam: 'blah' }).trigger("reloadGrid");
或这个:
$("#Grid").jqGrid('setGridParam', { postData: { someParam: 'somevalue'} }).trigger("reloadGrid");
但在我的操作方法我someParam参数没有得到填充以法
如何设置这些在jqGrid的,让他们通过行动的方法去重装时捡到?
更新 :我现在已经尝试了其他参数这种方法和它的工作!
所以现在我有:
$("#Grid").jqGrid('setGridParam', { postData: {
someParam: 'somevalue',
paramTwo: ' some value',
paramThree: 'some other value'
} }).trigger("reloadGrid");
someParam不起作用,但paramTwo和ParamThree做工作。
奇怪!
有什么能停止工作的一个参数?
UPDATE2:使用奥列格的建议如下:
var myGrid = jQuery("#Grid").jqGrid({
postData: {
someParam: function () { return $("#txtBox1").val(); },
paramTwo: function () { return $("#txtBox2").val(); },
paramThree: function () { return $("#txtBox3").val(); }
}
});
myGrid.trigger('reloadGrid');
...值没有打通发送。 我已经验证了的JQuery它在重装前返回正确的值。