WebGrid分页/排序AJAX正在扩展querystring
我在cshtml视图中有一个WebGrid,我使用ajaxUpdateContainerId参数使用AJAX对其进行分页/排序。但是,每次我单击链接对WebGrid进行页面/排序时,href都会发生变化,querystring会添加一个“\uuuswhg”参数WebGrid分页/排序AJAX正在扩展querystring,ajax,asp.net-mvc-4,sorting,paging,webgrid,Ajax,Asp.net Mvc 4,Sorting,Paging,Webgrid,我在cshtml视图中有一个WebGrid,我使用ajaxUpdateContainerId参数使用AJAX对其进行分页/排序。但是,每次我单击链接对WebGrid进行页面/排序时,href都会发生变化,querystring会添加一个“\uuuswhg”参数 每次我单击sort/pager时,查询字符串都会像这样增长,“\uu swhg”参数会不断增长,因为WebGrid中的“href”属性会将其添加到简单的“?sort=&sortdir=”或“?page=” 此参数表示一个唯一的时间戳,并
每次我单击sort/pager时,查询字符串都会像这样增长,“\uu swhg”参数会不断增长,因为WebGrid中的“href”属性会将其添加到简单的“?sort=&sortdir=”或“?page=” 此参数表示一个唯一的时间戳,并特意添加到每个url中。由于AJAX请求使用GET谓词,因此浏览器可能会缓存这些请求。这意味着当用户单击链接时,可能永远无法访问您的服务器。该参数确保不会缓存响应,因为每次都会获得唯一的url。目前这是在WebGrid中硬编码的,没有办法禁用它 当然,如果出于某种原因,您想自杀并删除此参数,一种可能是订阅自定义AJAX回调:
var grid = new WebGrid(
Model,
ajaxUpdateContainerId: "grid",
ajaxUpdateCallback: "callback"
);
您可以在其中替换所有链接并删除\uuu swhg
参数:
function callback() {
$('a[data-swhglnk="true"]').attr('href', function () {
return this.href.replace(/&__swhg=[0-9]{13}/, '');
});
}
此参数表示一个唯一的时间戳,并特意添加到每个url中。由于AJAX请求使用GET谓词,因此浏览器可能会缓存这些请求。这意味着当用户单击链接时,可能永远无法访问您的服务器。该参数确保不会缓存响应,因为每次都会获得唯一的url。目前这是在WebGrid中硬编码的,没有办法禁用它 当然,如果出于某种原因,您想自杀并删除此参数,一种可能是订阅自定义AJAX回调:
var grid = new WebGrid(
Model,
ajaxUpdateContainerId: "grid",
ajaxUpdateCallback: "callback"
);
您可以在其中替换所有链接并删除\uuu swhg
参数:
function callback() {
$('a[data-swhglnk="true"]').attr('href', function () {
return this.href.replace(/&__swhg=[0-9]{13}/, '');
});
}