我有一個使用PagedList.MVC的項目。正在努力自定義PagedList.Mvc
我有一個屏幕上,我想讓用戶能夠檢索過濾數據集(篩選開始日期,結束日期和地點)。
現在我的想法是在DocumentReady中添加一些jquery,並使用它替換每個頁面的URL中的佔位符。
所以現在我有以下代碼:
PagedListRenderOptions pagerOptions = new PagedListRenderOptions()
{
FunctionToTransformEachPageLink = (liTag, aTag) => { aTag.Attributes.Add("class","foo"); liTag.InnerHtml = aTag.ToString(); return liTag;},
DisplayPageCountAndCurrentLocation=true
};
和
@Html.PagedListPager(Model,
page => Url.Action(ViewBag.Method, new { page, AllOptions = PagedDealershipLocation, StartDate = "stPageDate", EndDate = "endPageDate" }),
PagedListRenderOptions.EnableUnobtrusiveAjaxReplacing(pagerOptions, ajaxopts)
然而,當分頁列表呈現,類沒有被添加到HTML,這樣我就可以」用它來操縱網址。
我明白我目前的方法已經存在缺陷,就好像過濾器已更改一樣,這發生在DocumentReady函數之外。但是現在我只想了解爲什麼使用上面的代碼,我沒有看到<a>
標籤的class屬性。 (理想情況下,我傾向於能夠鉤入被點擊的標籤,因此我總是可以獲得當前的過濾器,但是一旦我實際上可以找到正在生成的頁面定位符,這就是下一個問題!)
什麼讓你覺得你應該改變網址?常規方法是在包含過濾控件的視圖中有一個窗體(帶有'FormMethod.Get'),然後提交表單,根據窗體控件過濾數據並返回視圖。 –
當前應用程序的結構方式是,過濾器控件是包含可在任何頁面上使用的表單的部分。 尋呼機在每個頁面的底部分開一段,並建立一系列A標籤。由於這不是形式,我需要一種機制將表單值發送回由尋呼機生成的url。 – Matt
您可以通過使用表單併發布到GET方法來完成。 –