私はPagedList.Mvcを使用していますが、少し問題があります。だから私はドロップダウンリストから国を選択し、ajaxを使用して送信することができますインデックスのビューがあります。ASP.NET PagedList.MVC for PartialView
ビュー:私のGETEMPLOYEEコントローラの方法で
@model testModel.Models.Test
@using (Ajax.BeginForm("GetEmployee", "Test", new AjaxOptions
{
HttpMethod = "POST",
UpdateTargetId = "showResult"
}))
{
@Html.AntiForgeryToken()
@Html.DropDownList("CountryId", null, "-- Select Country --")
<input type="submit" value="Search" class="btn btn-default" />
}
<div id="showResult"></div>
、私はデシベルをループして部分図にモデルオブジェクトを渡しています。
コントローラー:私のpartialEmployeeビューで
[HttpPost]
public ActionResult GetEmployee(int CountryId, int? page)
{
var model = db.Employee
.Include(x => x.Country)
.Where(x => x.Country.CountryId == CountryId)
.ToList();
int pageSize = 3;
int pageNumber = (page ?? 1);
return PartialView("PartialEmployee", model.ToPagedList(pageNumber, pageSize));
}
、私は、テーブル内の従業員の名前を示しています。
PartialEmployeeビュー:
@model PagedList.IPagedList<testModel.Models.Employee>
@using PagedList.Mvc;
<link href="~/Content/PagedList.css" rel="stylesheet" type="text/css" />
@{
Layout = null;
}
<table class="table table-hover">
<tr>
<th>Username</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>
@Html.DisplayFor(modelItem => item.EmployeeName)
</td>
</tr>
}
</table>
<br />
Page @(Model.PageCount < Model.PageNumber ? 0 : Model.PageNumber) of @Model.PageCount
<div id="contentPager">
@Html.PagedListPager(Model, page => Url.Action("Index", new { page }))
</div>
ので、ここでの問題は、私は次のページでクリックしたときにということである(例:2)それはUpdateTargetIdに示す任意のテーブルずにバックインデックスページに戻ります。
<div id="showResult"></div>
どのような提案やサンプルコードをいただければ幸いです。
何が起こると思われますか?デフォルトでは、PagedListはajaxを呼び出すことはありませんが、ajaxを使用するオプションはありますが、例については[この回答](http://stackoverflow.com/questions/24679320/ajax-pagedlist-with-partial-view)を参照してください。 –
申し訳ありません。リンクには良い例があると思います。私が家に帰るときに私は試してみる。 – pavilion
@StephenMuecke PagedListにはajaxを使用するオプションがあり、それを私のケースに適用できると思いますか?だから私の場合、最初のページャはうまく見えますが、次のページャをクリックすると、テーブルが消えて最初のインデックスページに戻ります。 – pavilion