使用ASP.NET WebGrid时,分页和排序是通过将特定的查询字符串附加到包含名称和值的url(说明页面编号,排序方向等)来进行的。但是,当使用ajaxUpdateId属性能够异步更新WebGrid时,在单击页面时在页脚或单击页眉对列进行排序时,效果很好,但是查询字符串不再附加到url,刷新后浏览器页面不会持久保留分页和排序。通过ajax更新WebGrid时,有没有办法持久地对值进行排序和分页?提前非常感谢您提供任何有用的建议
我想我找到了解决方案。也许它并不完美,但可以。我花了很多时间试图弄清楚通过ajax更新时WebGrid的工作方式,但是所有这些功能都是隐藏的。因此,即使刷新页面时也需要保持排序和分页,每次更改页面或排序时都必须更新url。WebGrid通过url中的查询字符串来记住它。因此,我向WebGrid内的所有链接添加了一个jquery click事件,并使用了history.pushState函数来保存所单击的URL,然后刷新页面(您需要这样做,因为它仅适用于一次更改,因为ajax不会更改url。 )
<script type="text/javascript">
$("#gridContainderID a").click(function () {
history.pushState(null, null, this.href);
location.reload();
});
</script>
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句