如何使用onFailure
和OnSuccess
方法。目前我添加onFailure js方法,但它没有执行。也许我忘了添加一些脚本。 (我只加了jquery.unobtrusive.ajax.js
)。我不得不在模态窗口中返回onFailure
partialview。Ajax.BeginForm及其方法onFailure和onSuccess
守则控制器
[HttpPost]
public ActionResult RequestPassword(RequestForPasswordViewModel passwordRequestViewModel)
{
if (!ModelState.IsValid)
{
Response.StatusCode = (int)HttpStatusCode.BadRequest;
return PartialView("RequestForPassword", passwordRequestViewModel);
}
代码在局部视图
@model YouCapital.Web.Models.ViewModels.RequestForPasswordViewModel
<div>
@using (Ajax.BeginForm("RequestPassword", FormMethod.Post, new AjaxOptions()
{
InsertionMode = InsertionMode.Replace,
HttpMethod = "POST",
UpdateTargetId = "forgotPassword",
OnFailure = "JsonRequestForPassword_OnFailure",
OnSuccess = "JsonRequestForPassword_OnSuccess"
}, new { @class = "form-inline" }))
{
<fieldset>
<legend>Recover password</legend>
<div class="form-group">
@Html.Label("Enter your email")
@Html.TextBoxFor(x => x.Email)
</div>
<input type="submit" class="btn btn-default" value="Recover"/>
</fieldset>
@Html.ValidationSummary()
}
</div>
@section scripts
{
<script>
function JsonRequestForPassword_OnFailure() {
console.log('fail');
}
function JsonRequestForPassword_OnSuccess() {
console.log('success');
}
</script>
}
顺便说一句,我不知道,如果它出了问题,但它是在引导modal
并作为tabpanel
可能重复的问题HTTP:/ /stackoverflow.com/questions/5517813/how-to-use-ajax-beginform-onsuccess-and-onfailure-methods – Oleh 2014-10-30 11:44:57
显示onFailure回调的代码。和将触发它的控制器代码。 – 2014-10-30 11:52:37
我已经看到这个帖子,我已经脚本的方法,必须执行onFailure。但它的返回值只有PartialView(全屏,而不是模态),并且不执行javascript方法。我在其他帖子中添加了脚本,但不起作用。 – 2014-10-30 11:54:51