Ajax.BeginFormを使用してアプリケーションを呼び出してコードを実行しています。エラーが発生したら、私が作成するカスタムエラーメッセージを返したいと思います。Ajax BeginForm - OnFailureエラーメッセージを返す
しかし、私はこれまでこれを行うことができませんでした。これは私が持っているものです。
コントローラー:
[HttpPost]
[ValidateAntiForgeryToken]
public async Task<JsonResult> Edit(UserViewModel model) {
Response.StatusCode = 500;
return Json(new { error = "Broken" });
}
Ajax.BeginForm:
@using (Ajax.BeginForm("Edit", "User", new AjaxOptions { HttpMethod = "POST", OnSuccess = "window.location.reload();", OnFailure = "AjaxFailed(error);" }, new { @class = "form-horizontal", role = "form", @id = "EditForm" })) {
}
Javascriptを:
function AjaxFailed(error) {
debugger
$(".ErrorBox").prop('hidden', false);
$('.ModalErrorText').text("An error occured, please review the data and try again.");
}
私はBeginFormがキャッチしているだろうと思っただろう返されたエラーはJavascriptに渡されましたが、そうではありません。誰かが私にJavascriptのエラーメッセージを返すのを助けることができますか?
おかげ
するonSuccess内の障害を処理せずにこれを行うための正しい方法を考え出す上の任意の運? – Jeff