使用POST寻呼asp.net-mvc页面的最佳方式

时间:2008-12-23 10:10:04

标签: asp.net-mvc post paging

我有一个返回PagedList<>的动作方法在表格的POST请求之后。
我想在此页面中添加分页,但所有分页方案似乎只能用于GET请求。

目前添加分页控件的唯一方法是添加一堆表单,其中一个按钮用于导航页面。这看起来很丑陋(所有表单按钮)并且会产生大量开销,因为每个表单都需要一堆隐藏字段(大约10个)来传输所需的参数。

是否有一种干净的方法可以向GET请求添加约12个可选参数? 或者也许有更好的方法?

2 个答案:

答案 0 :(得分:1)

每个分页按钮都有一个您需要提交的唯一值以及其余的表单值。所以你真的只需要这样的东西:

function GoToPage(pageNumber)
{
    // submit form along with pageNumber

    return false;
}

<a href="javascript:GoToPage(1);">1</a>
<a href="javascript:GoToPage(2);">2</a>
<a href="javascript:GoToPage(3);">3</a>

答案 1 :(得分:0)

向GET请求添加许多可选参数的方法是使用查询字符串参数。使控制器操作的参数可以为空,如果用户提供查询字符串参数,MVC框架将用查询字符串参数填充它们,否则将它们保留为空。

我不相信使用POST进行分页通常是合适的。 POST旨在更新服务器资源。分页不会那样做。