jQgrid更改参数已发送到服务器
我正在使用cookies加载用户以前的排序和分页选项。我希望将这些保存的值设置为服务器接收的参数 我希望更改的参数如下(行通过prmNames替换为max)jQgrid更改参数已发送到服务器,jqgrid,Jqgrid,我正在使用cookies加载用户以前的排序和分页选项。我希望将这些保存的值设置为服务器接收的参数 我希望更改的参数如下(行通过prmNames替换为max) /&max=20&page=1&sidx=&sord=asc 我试过使用: $.extend($.jgrid.defaults, { sidx:"fName", sord:"desc", page:2, rows:10}); 以及以下各项的变化: beforeRequest:functio
/&max=20&page=1&sidx=&sord=asc
我试过使用:
$.extend($.jgrid.defaults, {
sidx:"fName",
sord:"desc",
page:2,
rows:10});
以及以下各项的变化:
beforeRequest:function(){
$('#grid').jqGrid('setGridParam', {
sidx: "fName",
sord: "desc",
page: 2,
max: 10
});
}
它使用$.extend($.jgrid.defaults…)更改
页面的值,但我无法更改其他参数。您只需使用setGridParam
设置jqGrid的参数,这些参数的其他名称为sidx
、sord
、page
和rows
sidx -> sortname
sord -> sortorder
page -> page
rows -> rowNum
因此,最好是使用从cookie初始化的上述参数直接创建jqGrid
如果直接使用所需参数创建网格时遇到问题,可以首先使用datatype:“local”
创建网格,这将阻止加载网格。然后更改所需参数,并将datatype
另外设置为所需值('json'或'xml').最后重新加载网格。因此代码应如下所示
$('#list').jqGrid('setGridParam'{
数据类型:“json”,
sortname:“fName”,
巫师:“描述”,
页码:2,
行数:10
}).触发器(“重新加载网格”);
如果直接使用所需参数创建网格时遇到问题。另外,使用datatype:“local”
创建网格将阻止加载网格我可以使用上一个会话中的postData对象设置postData吗?我还可以执行类似以下操作:`beforeProcessing:function(){grid.jqGrid('setGridParam',{postData:postData})}`@Jaym:一般来说你可以,但这取决于上下文是否正确。我建议你阅读描述我如何理解和实现这个问题的内容。你可以查看我发布的演示。我希望它能回答你所有的问题。我使用的技术与关于cookies的问题类似。正如你所说的d由于达到最大cookie大小,我遇到了问题。我将尝试在本地实现它;这看起来是最好的选择。演示正是我试图实现的。感谢您的帮助!非常恼人的是,参数名称与表单值中发送的值不匹配。感谢您保存sidx->sortname
我花了很多时间。我以为我疯了。@timbrown:不客气!顺便说一下,你可以使用jqGrid的prmNames
重命名几乎所有将发送到服务器的参数。例如prmNames:{page:“requestedPage”,rows:“rowsPerPage”,sort:“sortIndex”,order:“sortOrder”,search:“isSearching”}
。