これは一種のユニークな問題であり、私はまだMVCにかなり慣れていないので、それを説明するために最善を尽くします。サードパーティのグリッドを含むページがあり、各行は「Company」オブジェクトです。ビューのモデルはCompanyManager
オブジェクトであり、検索パラメーターをフィールドとして、リストをグリッドに入力します。ユーザーは編集する行を選択でき、ポップアップが表示されます。グリッドの外側にあるボタンも、新しいレコードを作成するための同じポップアップを開きます。
ポップアップのコンテンツは部分ビューにAddEdit
あり、そのモデルは「Company」オブジェクトです。他のフィールドに加えて、レコードとして「連絡先」を持つ別のサードパーティグリッドもあります。「連絡先」のサードパーティグリッドから、レコードをシリアル化し、送信時に渡すことができます。
私の問題は、モーダルポップアップを送信することにあります。モーダルポップアップは、成功すると閉じ、会社モデル(またはグリッド内の連絡先)が検証に失敗すると開いたままになります。送信を行うための最良の方法は何ですか?現在、JavaScript関数を呼び出すボタンがあります。この関数では、jqueryを試しまし$.submit
たが、フォームがに投稿されるためIndex
、ポップアップは関係なく閉じられます。また、Ajax呼び出しに投稿しようと$.post
しましたが、このためにコントローラーにJSONの結果が返されます。これは期待どおりに機能しませんでした。JSONをHTMLとして出力するだけです。