サイトには jquery .dialog で表示される多数のフォームがあり、ajax ポスト リクエストを使用して送信します。
私はかなりの調査を行いましたが、ajax リクエストの結果としてサーバー側から検証エラーを返す方法について明確なパターンはありません。
私が見つけたほとんどの唯一のパターンは、フォームを投稿してからサーバー側で検証を行い、どちらの場合も結果をカプセル化したjsonオブジェクトを返し、結果が正しくない場合はフォームhtmlを返すことでした
すなわち。
{result: true}
{success: false, html = "<form>....</form>"}
したがって、結果が false の場合は、古いフォームを検証エラーのある新しいフォームに置き換えるため、フォーム上の項目に関連付けられたイベントを再配線する必要があります。
これは問題のないアプローチのように思えますが、実際には検証メッセージのみが必要であり、フォームを再配線する必要がある場合に必要なデータをクライアントに返す可能性もあり、これは少し面倒です。
何らかの方法で検証エラーを取得し、アクションからjsonオブジェクトでそれらを返し、クライアントに正しいフィールドに対してそれらを表示するように指示するという別の言及を見つけました。
これを簡単にするフレームワークはありますか、それとも自分で作成するか、フォームのパーシャル全体を返し、検証が正しくない場合に再配線することに固執する必要がありますか?