我有一个 MVC 视图,我正在使用该PagedList
组件对数据进行一些分页。我支持此功能的 JavaScript 如下所示:
$(function () {
var getPage = function () {
var $a = $(this);
var options = {
url: $a.attr("href"),
type: "get"
};
$.ajax(options).done(function (data) {
var target = $a.parents("div.pagedList").attr("data-ExchangeSite-target");
data: $("form").serialize(),
$(target).replaceWith(data);
});
return false;
};
$(".main-content").on("click", ".pagedList a", getPage);
});
我的 .cshtml 文件部分看起来像这样:
@model ExchangeSite.Entities.BicycleSearchSeller
<div id="itemList">
<div class="pagedList" data-ExchangeSite-target="#itemList">
@Html.PagedListPager(Model.BicycleSellerListingList, pageNumber => Url.Action("Index", new {pageNumber}),
PagedListRenderOptions.ClassicPlusFirstAndLast)
</div>
...
...
在 IE9 中,这非常有效。当我单击特定页码或下一页/上一页时,将对我的控制器进行异步调用以刷新数据列表(“itemList”)。但是,在 Chrome 中,对我的控制器进行了两次调用。一个是 Ajax 调用,另一个不是。谁能告诉我为什么在 Chrome 中对我的控制器进行了两次调用?如果您需要查看更多代码,请告诉我。