0
我有一種感覺,這是一個簡單的問題,我失蹤,但幾個小時後,我已經放棄,並決定發佈在這裏。JavaScript中的回調計時問題,當通過在MVC中查看傳遞
我想實現一個通用的分頁視圖,我可以在整個網站上使用。因此,分頁模型需要一個函數,該函數將被綁定到用作稍後回調的分頁控件。請參閱下面的UpdateFunction。
ViewModels.Shared._PaginationPartialViewModel pagination =
new ViewModels.Shared._PaginationPartialViewModel()
{
CurrentPage = Filter.Page,
ItemFrom = GenericHelpers.Paging_GetItemFrom(10, Filter.Page, TotalItems),
ItemTo = GenericHelpers.Paging_GetItemTo(10, Filter.Page, TotalItems),
TotalItems = TotalItems,
TableClass = Filter.Table,
TotalPages = (int)Math.Ceiling((double) TotalItems/10),
UpdateFunction = "getTransfers('" + Filter.Table + "')"
};
現在,當模型綁定到視圖,這個功能是傳過來的回調,像這樣一個javascript click事件paginationClick()...
<a href="#" class="stock-pagination__action stock-pagination__action_state_active @(Model.TableClass + "_Page")" data-page="@Model.CurrentPage" onclick="paginationClick(this, @(Model.CurrentPage), @Model.UpdateFunction); return false;">@Model.CurrentPage</a>
的paginationClick()函數火災,但是在檢查開發控制檯時,回調方法似乎是先發射。下面是paginationClick()方法...(我知道頁面參數沒有被利用的BTW!)
function paginationClick(control, page, callback)
{
if (!$(control).hasClass('stock-pagination__action_state_active')) {
$(control).parent().find('a').each(function() {
$(this).removeClass('stock-pagination__action_state_active');
});
$(control).addClass('stock-pagination__action_state_active');
callback;
}
}
我任何人都可以提供一個額外的一雙眼睛,這將是大加讚賞!