Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/blackberry/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
WebGrid分页/排序AJAX正在扩展querystring_Ajax_Asp.net Mvc 4_Sorting_Paging_Webgrid - Fatal编程技术网

WebGrid分页/排序AJAX正在扩展querystring

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=” 此参数表示一个唯一的时间戳,并

我在cshtml视图中有一个WebGrid,我使用ajaxUpdateContainerId参数使用AJAX对其进行分页/排序。但是,每次我单击链接对WebGrid进行页面/排序时,href都会发生变化,querystring会添加一个“\uuuswhg”参数


每次我单击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}/, '');
    });
}