我正在使用它:
<%= Html.Pager((IPagination)Model) %>
是否有简单的方法来更改渲染的网址。我查了更多文档,但找不到多少。
答案 0 :(得分:9)
你想要改变什么?
这是我更改网址的方式:
Html.Pager(Model.AssetsPagedList)
.First("First")
.Last("Last")
.Next("Next")
.Previous("Previous")
.Link(currentPage => Url.Action("Browse", new {
page = currentPage,
searchTerm = Model.SearchModel.SearchTerm,
excludedWords = Model.SearchModel.ExcludedWords,
minPrice = Model.SearchModel.MinPrice,
maxPrice = Model.SearchModel.MaxPrice,
locationId = Model.SearchModel.LocationId,
catalogId = Model.SearchModel.CatalogId
}))
你也可以创建一个这样的帮手:
public static Pager Pager(this HtmlHelper helper, IPagination model, FormCollection formCollection)
{
// here you can use MvcContrib.UI.Pager.PaginationExtensions.Pager static methods
// or create MvcContrib.Pagination.Pager class directly
}
答案 1 :(得分:1)
这实际上取决于你想要改变什么。
在以下示例中,我将更改分页链接以使用ajax
$("#addressListPlaceholder .paginationRight a").click(function (event) {
event.preventDefault();
$.ajax({
type: "get",
dataType: "html",
url: this.href,
data: {},
success: function (response) {
$("#addressListPlaceholder").html('').html(response);
}
});
});
答案 2 :(得分:0)
您可以将任何可投射的内容传递给IPagination。例如,请参阅此SO问题/答案:MvcContrib.UI.Grid pagination problem
您还可以使用jQuery在生成时间之后修改寻呼机。请参阅此帖子以获取示例:http://thekindofme.wordpress.com/2009/01/12/ajax-enabling-mvccontrib-grid-pagination-with-jquery/