我有一个控制器方法签名......
public ActionResult Index(int? page, GridSortOptions sortOptions, bool? listViewSelected)
{
// do something
}
我有一个 ajax 函数来调用该方法
function loadVehicles() {
if (page > -1 && !_inCallback) {
_inCallback = true;
page++;
var url = "/memberdashboard.aspx/SearchResults/Index";
var params = {
page: page,
sortOptions: { "Column": "@Model.GridSortOptions.Column", "Direction": "@Model.GridSortOptions.Direction" },
listViewSelected: '@Model.IsListViewSelected',
};
$("div#loading").html('<img src="../../Content/images/InfiniteScrolling/ajax-loader.gif" />');
$.ajax({
url: url,
type: "GET",
data: params,
dataType: "html",
success: function (data) {
if (data != "") {
$("#content").append(data);
} else {
page = -1;
}
_inCallback = false;
$('div#loading').empty();
},
error: function (jqXHR, textStatus, errorThrown) {
alert("Unable to fetch any additional information.");
}
});
}
}
对 html 代码的调查验证了“var params”具有正确的值,但是,当我进入控制器方法时,“page”具有正确的值,“listViewSelected”具有正确的值但“sortOptions”没有。有什么想法吗?