コントローラーメソッドのシグネチャーは...
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」にはありません。何かご意見は?