$.ajax({
type: "POST",
url: "Sample/Test",
dataType: "html",
async: false,
success: function (resp) {
}
})
コントローラーに Ajax 呼び出しを行い、コントローラーが部分ビュー(ActionResult)を返し、ページ内の特定の div の HTML を更新します。いいね。
コントローラーでエラーが発生した場合、Ajax 成功に返されるエラー ページが返されます。
ここに2つの問題があります
- 単純なシナリオでは、エラーページは部分的な Div に設定されています
- 一部のシナリオでは、動的に div id を見つけて、そのセクションだけを更新しています。エラーページはdivが未定義であるため、何も起こりません。
エラーの場合に部分的に更新するのではなく、エラー ページにリダイレクトするにはどうすればよいですか。
私も try catch を試してみましたが、Catch で部分ビューではなくビューを返しました。しかし、それはうまくいきませんでした。
以下のコードからもリダイレクトしてみました
protected void Application_Error(object sender, EventArgs e)
{
Response.Redirect("~/Error/Error");
}
これにより、エラーページも ajax 成功に戻ります。
アプリケーションに複数の ajax 呼び出しがあるため、完全なエラー ページにリダイレクトする最良の方法は何ですか?
私が遭遇した他のアプローチは、成功のテキストを見つけてそこにリダイレクトすることです。それは良いアプローチですか?
複数の場所でajax呼び出しがあるため、その方法を実装する一般的な方法。
ありがとう