【问题标题】:Issue with pagination in PagedList MVCPagedList MVC 中的分页问题
【发布时间】:2015-08-31 12:21:04
【问题描述】:

我正在使用 MVC PagedList 在我的项目中处理 分页。一切正常,除了在我的 controller 中我必须用 "1" (默认页码)初始化 pageNumber 参数。问题是第 1 页上的蓝色激活按钮,无论您单击哪个页面按钮链接,该按钮仍然存在。此外,这个按钮也缺少actionLink。

如您在控制器代码中所见,我正在将我的 搜索分页 集成在一起。

public PartialViewResult List_Items(string keyword, int? page)
{
    var newlists = from s in db.TrMs
                   orderby s.S1
                   select s;

    int pageNumber = (page ?? 1);
    int pageSize = 10;
    var data = newlists.Where(f => f.S1.ToString().Contains(keyword) && f.S100 == vt).ToPagedList(pageNumber, pageSize);
    return PartialView(data);
}

这是在我的视图

中为 PagedList 生成的 Html
<div class="pagination-container">
    <ul class="pagination">
        <li class="active">
            <a>1</a>
        </li>
        <li>
            <a data-ajax="true" data-ajax-method="GET" data-ajax-mode="replace" data-ajax-update="#searchResult" href="/TrM/Search_Items?keyword=&amp;page=2">2</a>
        </li>
        <li>
            <a data-ajax="true" data-ajax-method="GET" data-ajax-mode="replace" data-ajax-update="#searchResult" href="/TrM/Search_Items?keyword=&amp;page=3">3</a>
        </li>
        <li>
            <a data-ajax="true" data-ajax-method="GET" data-ajax-mode="replace" data-ajax-update="#searchResult" href="/TrM/Search_Items?keyword=&amp;page=4">4</a>
        </li>
        <li class="PagedList-skipToNext">
            <a data-ajax="true" data-ajax-method="GET" data-ajax-mode="replace" data-ajax-update="#searchResult" href="/TrM/Search_Items?keyword=&amp;page=2" rel="next">»</a>
        </li>
    </ul>
</div>

这是我使用分页助手的方式。

Page @(Model.PageCount < Model.PageNumber ? 0 : Model.PageNumber) of @Model.PageCount
@Html.PagedListPager(Model, page => Url.Action("List_Items", "TrM", new {keyword="", page }), PagedListRenderOptions.EnableUnobtrusiveAjaxReplacing(new AjaxOptions() { HttpMethod = "GET", UpdateTargetId = "searchResult" }))

【问题讨论】:

    标签: asp.net asp.net-mvc pagedlist


    【解决方案1】:

    您的分页控件很可能位于 searchResult 容器之外。当您单击一个页面时,您正在替换表格而不是分页控件。将分页控件移动到 searchResult 容器内!

    希望这会有所帮助。

    【讨论】:

    • 你是对的!谢谢! “searchResult”标签实际上被放置在一个表格中。这就是为什么它没有正确渲染和更新这个 DIV。再次感谢!
    猜你喜欢
    • 1970-01-01
    • 2015-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多