我有一个 Ajax 调用,它触发了我的 Controller 操作“SearchFromWithin”,我想知道为什么 View 没有显示。我可以进入 View 并逐步浏览它,但屏幕保持不变。它不显示新 View 。
这是我的代码
var optionsFromWithin = {
url: '/Home/SearchFromWithin',
type: "get",
data: { searchQuery: navbarInput.value, classDate: today, latitude: latitude, longitude: longitude, mapType: mapType }
};
$.ajax(optionsFromWithin).done(function (data) {
// don't do anything here
});
这是 Controller 中的操作。当我到达 return 语句时,我可以进入“搜索” View 并逐步浏览它,没有明显的错误,但该页面与我进行 Ajax 调用时所在的页面相比从未发生变化。
[HttpGet]
public ActionResult SearchFromWithin(string searchQuery, DateTime classDate, string latitude, string longitude,
string mapType, int page = 1)
{
// do a bunch of stuff here
return View("Search", viewModel);
}
最佳答案
这可能是因为您没有更新页面吗?通常,当您调用ajax时,您不会调用部分 View ,将其内容用作特定元素的html[例如DIV]吗?
return PartialView("viewName",Model);
然后当 ajax 调用完成时
$('#myDiv').html(data);
这就是你要找的吗?
关于jquery - 当我通过 Ajax 调用输入操作时,为什么我的 View 没有呈现?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32064837/