如何解决C# 和 ASP.NET MVC:使用 ajax 调用调用视图
我想在当前视图上使用 ajax 调用来调用视图。下面是我的 Ajax 调用,它调用了我的控制器的一个函数。
$.ajax({
type: 'POST',url: '@Url.Action("EditCertificateObservation","Frühwarnsystem")',data: {
serverName: '@Model[0].ServerName',name: event.data.name,thumbprint: event.data.thumbprint,expiringDateStr: event.data.expiringDate,isChecked: document.getElementById(store + event.data.index).checked,model: data,},});
[HttpPost]
public ActionResult EditCertificateObservation(string serverName,string name,string thumbprint,string expiringDateStr,bool isChecked,string model)
{
var newModel = JsonConvert.DeserializeObject<List<Store>>(model);
var cert = new Certificate(serverName,name,thumbprint,expiringDateStr);
var server = new Server(serverName);
server.FetchIdByServerName();
if (isChecked)
{
cert.AddToObservation(server.Id);
}
else
{
cert.DeleteFromObservation();
}
return View("Index");
}
告诉你:我在我的视图中使用一个复选框调用ajax调用,它是动态生成的。如果我调试控制器函数被调用并运行,但浏览器没有加载我返回的视图。
如果您需要更多信息,请在此处询问。
感谢您的帮助
解决方法
您正在调用 ajax POST HTTP 请求。这意味着您可以下载调用的结果并将其分配给一个 javascript 变量。此结果不会作为页面显示在浏览器中。查看 $.post
here 的示例。
如果您想在 Ajax 请求之后打开一个视图,而不必等待控制器的响应,那么您可以使用 success
,但您也可以使用 failure
或 {{1 }} 取决于你的需要,所以你的 Ajax 将是这样的:
error
为了更有用,您的控制器可以发送带有一些参数的 Json 响应,例如,如下所示:
$.ajax({
type: 'POST',url: '@Url.Action("EditCertificateObservation","Frühwarnsystem")',data: {
serverName: '@Model[0].ServerName',name: event.data.name,thumbprint: event.data.thumbprint,expiringDateStr: event.data.expiringDate,isChecked: document.getElementById(store + event.data.index).checked,model: data,},success: function (response) {
alert(response.message);
window.location.href = "/Frühwarnsystem/Index";
// or with some parameter
window.location.href ="/Frühwarnsystem/Index?id=" + response.counter;
// or if you prefer with helper ...
window.location.href = '@Url.Action("Frühwarnsystem","Index")';
},failure: function (response) { alert("failure"); },error: function (response) { alert("error"); }
});
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。