Я использую MVC PagedList для обработки pagination в моем проекте. Все работает отлично, за исключением того, что в моем контроллере Мне нужно инициализировать параметр pageNumber с помощью «1» (номер страницы по умолчанию). Проблема заключается в синей активированной кнопке на стр. 1, которая остается там, независимо от того, какая кнопка нажимает кнопку. Кроме того, в этом кнопка также отсутствует действиеLink.Проблема с разбиением на страницы в PagedList MVC
Одна последняя вещь, которую я интегрируя мой поиск с постраничной как вы можете видеть в коде контроллера.
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);
}
Вот сгенерированный Html для PagedList в моей зрения
<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=&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=&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=&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=&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" }))
Вы правы! Спасибо! Тег «searchResult» был фактически помещен внутри таблицы. Вот почему это не было рендеринг и обновление этого DIV должным образом. Еще раз спасибо! – geekowls