【问题标题】:Ajax Pagination in PagedList.MVC using partial PagePagedList.MVC 中的 Ajax 分页使用部分页面
【发布时间】:2013-06-24 13:00:49
【问题描述】:

如果我不使用部分页面,PagedList.Mvc 工作正常,但是当我使用带有 ajax 的部分页面加载网格时,分页出现问题。我在 TroyGoode https://github.com/TroyGoode/PagedList/issues/26#issuecomment-6471793 的支持下结束,但提供了链接因为支持不起作用。 现在,我是这样用的

@Html.PagedListPager((IPagedList)Model.MovieInforamtions, page => Url.Action("GetMovieDatabase", new { page }))

,它会加载页面,但我需要以 ajaxically 的方式更改分页。我怎样才能做到这一点?

【问题讨论】:

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


    【解决方案1】:

    通过使用 PagedListRenderOptions.EnableUnobtrusiveAjaxReplacing 解决了这个问题。

    @Html.PagedListPager(
        Model.MovieInforamtions, 
        page => Url.Action("GetMovieDatabase", new { page = page}),
        PagedListRenderOptions.EnableUnobtrusiveAjaxReplacing(new AjaxOptions(){  HttpMethod = "GET", UpdateTargetId = "movie_grid"})
    )
    

    【讨论】:

    • 如果您的项目存在于 GitHub 或其他地方,您能否将链接发布到您的项目?
    • 如果我们想要 书签 示例:第 2 页,如地址栏中的 here 所述,Ajax GET 上不存在查询字符串,是否有任何使用 ajax 历史记录的解决方案plugins?
    • 如果用户登录会话超时,这将显示一个空白页面。这里怎么截取ajax请求响应来检查状态?
    【解决方案2】:

    或者,您可以使用 jQuery Ajax 来执行此操作,如下例所示。

    https://github.com/ungleng/SimpleAjaxPagedListAndSearchMVC5

    【讨论】:

      【解决方案3】:

      代码有效,但您需要将 jquery-unobtrusive-ajax.min.js 的引用添加到您的main 视图或partial

      <script src="@Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")" type="text/javascript"></script>
      

      【讨论】:

        【解决方案4】:

        人 本守则的作用 您必须添加Microsoft.Jauery.unobtrusive-ajax 才能工作 如果您不添加此项目将不起作用

        【讨论】:

          猜你喜欢
          • 2013-05-31
          • 2014-12-04
          • 2012-06-22
          • 2010-09-08
          • 1970-01-01
          • 2021-08-28
          • 1970-01-01
          • 2011-07-29
          • 1970-01-01
          相关资源
          最近更新 更多