我正在使用 MVC3 和 C#,第一次调用一切正常,但第二次 C# 操作方法捕获的参数为空。
这是我的代码:
Monitor.SearchAction = function (pageNum) {
var searchUrl = $("#textURL").data("url");
var newPageNum = pageNum;
var searchInput =
{
PageNumber: newPageNum
};
searchInput["FromDate"] = $("#FromDate").val();
searchInput["FromHour"] = $("#FromHour").val();
$.ajax({
url: searchUrl,
data: JSON.stringify(searchInput),
success: function (d, m, x) {
var $listingContainer = $("#listingContainer");
$listingContainer.html(d);
},
async: false,
cache: false,
});
};
这里是 Controller 方法头:
public PartialViewResult Search (DAS.Dashboard.Web.Areas.Monitoring.ViewModels.MonitoringSearchInputModel searchInput)
因此,“searchInput”是一个具有三个属性的模型,第二次调用时收到“null”。
最佳答案
检查从调用的 C# 方法返回的局部 View 。即
public PartialViewResult Search (DAS.Dashboard.Web.Areas.Monitoring.ViewModels.MonitoringSearchInputModel searchInput)
如果局部 View 具有“FromDate”和“FromHour”输入字段并且具有与第一次相同的属性。
关于c# - Ajax 调用在第二次尝试后返回未定义的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24922573/