4

表形式のデータを持つ部分ビューがあります。ページングにPagedListを使用しています。

通常のビューではうまく機能しますが、部分ビューに配置しようとすると、次のページまたは他のページをクリックすると、ページ全体が更新され、ビューが壊れます:(

ページネーションを実行するときに部分ビューのみを更新したいのですが、ビュー全体ではなく部分ビューを変更したいだけです。

これは私のパーシャルビューのページネーションのコードです...

Page @(Model.PageCount < Model.PageNumber ? 0 : Model.PageNumber) of @Model.PageCount
@Html.PagedListPager( Model, page => Url.Action("StudentList", new { page, sortOrder = ViewBag.CurrentSort, currentFilter=ViewBag.CurrentFilter }) )

Url.Action の代わりに Ajax.ActionLink を配置しようとしましたが、成功しませんでした...助けはありますか??

4

2 に答える 2

1

PagedListRenderOptions.EnableUnobtrusiveAjaxReplaceing を使用して、ページのないリンクを ajax 化すると、部分ビューが返されます。

コントローラーで:

 if (Request.IsAjaxRequest())
 {
    //viewModel=your viewModel
    return PartialView("viewModel");
  }

ビューで:

@Html.PagedListPager( Model, page => Url.Action("StudentList", new { page, sortOrder = ViewBag.CurrentSort, currentFilter=ViewBag.CurrentFilter }),PagedListRenderOptions.EnableUnobtrusiveAjaxReplacing( new AjaxOptions(){  HttpMethod = "GET", UpdateTargetId = "student_table"}) )
于 2014-08-18T11:21:15.197 に答える