【发布时间】:2014-01-25 09:28:08
【问题描述】:
我正在尝试使用这样的 ajax 调用 MVC 控制器
function programare() {
$.ajax({
url: "@Url.Action("Programeaza")",
type: "POST",
dataType: "json",
data: {
name : $("#name").val()
, surnume : $("#surnume").val()
},
error: function (response) {
if (!response.Success)
alert("Server error.");
},
success: function (response) {
if (!response.Success)
alert("Form Error.");
}
});
}
我的控制器方法如下所示:
public JsonResult Programeaza(ProgramareModel input) {
if(String.IsNullOrWhiteSpace(input.name)){
return Json(new {Success = false});
}
return Json("OK");
}
调用控制器后,我被重定向到Programare/Programeaza 显示“OK”或{“Success”:false} 的页面,而不是从 ajax 执行成功或错误函数。
我只想将消息“OK”或“Server error”显示为警报并停留在同一页面上。
编辑:如果我添加
async: false,
对于ajax,调用成功函数并显示“OK”消息,但之后仍然重定向到显示Json内容的页面。
我应该如何让它在警报消息后停止?
$(function () {
$("#programare").click(programare);
});
html:
<button type="submit" id="programare">Programeaza</button>
【问题讨论】:
-
您何时调用 ajax 调用、表单提交、按钮单击等?
-
我在按钮点击时调用 ajax 方法
-
显示调用 ajax 调用的代码。
-
$(function () { $("#programare").click(programare); });
标签: jquery ajax asp.net-mvc json