あなたの質問は興味深いと思いますが、単純な解決策を期待するべきではありません。簡単な解決策が存在しない理由はたくさんあります。
まず、jqGrid は jQuery プラグインであり、jQuery UI Widget ではありません。jQuery UI CSS フレームワークのみを使用します。そのため、 jqGrid は、タブ、ダイアログ、ボタン、ツールチップ、日付ピッカー、オートコンプリートなどの jQuery ウィジェットを使用しません。Effects や Position ユーティリティも使用されません。ウィジェットを使用するソリューションにjqGridを統合できますが、内部では使用しません。
2 番目の理由: jqGrid の編集フォームの構造はテーブル指向です。getFormData
フォーム編集の結果を取得するために jqGrid によって内部的に使用される関数は、テーブル指向のセレクターを使用します (行と行を参照) 。
$("#"+"TblGrid_"+$.jgrid.jqID($t.p.id)+">tbody>tr>td>.FormElement").each(function() {
したがって、たとえばafterShowFormコールバック内の別のタブにいくつかの入力要素を移動することはできません。この場合、getFormData
正しく動作せず、編集結果がサーバーに送信されません。
代わりに実用的にできることは、フォーム内の興味深い追加情報によるデータのグループ化の使用です。詳細については、回答を参照してください。
別の方法は、 formoptionscolpos
の使用とrowpos
プロパティです。詳細については、回答を参照してください。
上記のアプローチの両方を組み合わせることができます。