asp.net-mvc - 在我的 MVC4 站点中的排序或分页操作期间,如何让我的 WebGrid 以 POST 而不是 GET?

标签 asp.net-mvc asp.net-mvc-4 postback webgrid

我有一个相当简单的站点,其中包含一个搜索部分 View 和一个列表部分 View 。它们使用多个模型汇总到索引 View 中。

一切都很好。除了当我单击网格列标题进行排序或尝试翻页到下一个数据列表时,网格返回为空。如果我重新提交相同的搜索条件,则网格将重新填充所有适用的数据,这些数据已正确排序或分页。

我追踪到这种行为是因为 WebGrid 将其分页和排序机制设置为 GET 而不是 POST。所以显然我所有的模型数据都没有提交。

有没有办法让 WebGrid 进行 POST,以便数据标记一起进行?对于 WebGrid 作为一个类不包含想要分页或排序的数据,这似乎适得其反。

最佳答案

老问题,但只是为了添加一个引用:

我更喜欢 this link 中建议的解决方案

使用 JQuery 解决了这个问题:

var links = $('a[href*=page], a[href*=sort]'), form = $('form');
links.click(function () {
            form.attr("action", this.href);
            $(this).attr("href","javascript:");
            form.submit();
        });

关于asp.net-mvc - 在我的 MVC4 站点中的排序或分页操作期间,如何让我的 WebGrid 以 POST 而不是 GET?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15749042/

相关文章:

c# - MVC - 验证 - ViewModel 是否应该有权访问数据库

asp.net-mvc - 用于存储用户信息的 MVC Session 与 DB 调用

asp.net-mvc - 使用 Redirect() 时将信息传回 View

c# - .Net 框架来管理单独机器上的后台运行进程

asp.net-mvc - 如何将复选框绑定(bind)到asp net mvc中的字符串属性

asp.net-mvc - 如何使用 ASP.NET MVC ActionFilterAttribute/IResultFilter 修改输出

c# - CheckboxList 未设置选中并禁用 Viewstate

asp.net-mvc - MVC Action Controller 生成一个带有 token 的 url,供用户在不登录的情况下单击并查看页面

c# - 按钮点击随机工作 asp.net

.net - 在更新面板中提交表单后运行 javascript?