我遇到了一个问题,即在对指定控制器发出ajax请求时,页面无法加载(或者更确切地说,它什么都不做)。
发送带有ID的ajax以加载填充的视图模型,然后使用所述视图模型加载视图。我不打算加载局部视图,因为这个调用是在chartjs条形图选择中发生的,用户点击一个条形图,它将调用事件来加载带有ID的ajax函数来加载“细节” “页面。
这个被调用的控制器在别处使用,但这是第一次在ajax方法中调用。
它是否失败,因为ajax要求回复某种类型的局部视图,而不是完整视图?有没有办法使用ajax调用中的视图模型加载视图?
注意,ID成功进入控制器方法,一切都按预期执行,加载视图就是问题。
Javascript / ajax内部视图
.
. Nested ajax call here
.
historyGraph.onclick = function(evt) {
var activePoints = myChart.getElementsAtEvent(evt);
var firstPoint = activePoints[0];
var executionId = idData[firstPoint._index];
if (firstPoint !== undefined) {
goToDetailsPage(executionId);
}
}
}
});
}
function goToDetailsPage(executionId) {
$.ajax({
url: "@Url.Action("Details", "TestSuiteExecutions")",
data: { 'testSuiteExecutionId': executionId },
type: 'POST',
dataType: "json"
});
}
控制器方法
public ActionResult Details(int testSuiteExecutionId)
{
var resultsModel =
this.testSuiteExecutionModelService.GetTestSuiteExecutionResultsModelForTestSuiteExecutionId(
testSuiteExecutionId);
return View("Details", resultsModel);
}