您将如何使用 jQuery 使用 Razor 语法发布到不同的控制器?下面是我尝试使用的代码。每个警报都会弹出我期望的确切信息,除了包含@Url.Action
. 这给了我一个只包含控制器和方法(即/Agent/Details
)的 URL。sNumber
完全不见了。
奇怪的是,这段代码仍然使用正确的sNumber
参数正确地发布到控制器。但是,一旦控制器完成从数据库中获取代理并尝试呈现视图的过程,什么都不会发生。用户停留在同一页面上。
这是 jQuery
alert("input: " + item + ", map: " + map[item].sNumber);
var sNumber = map[item].sNumber;
alert("variable: " + sNumber);
alert('@Url.Action("Details","Agent")', { id: sNumber });
$.post('@Url.Action("Details","Agent")', { id: sNumber });
控制器中有大量代码,所以我会通过不发布它来节省您的时间。然而,这是最后一行
return View(bigAgent);
控制器使用sNumber
输入参数从我们的数据库中获取记录并将代理的信息传递给Details
视图。我已经使用 jQuery 搜索和我们的常规搜索(正确重定向)检查了bigAgent
对象的内容,它们是一回事。无论出于何种原因,您Details
在使用 jQuery 搜索时都不会被定向到该页面。