0

インライン編集用のjqgridで、保存アイコンをクリックすると、**内部的にsaveRowメソッドが呼び出されますが、カスタムメソッドを呼び出して、保存ロジックを実装し、コントローラーメソッドを呼び出します。**

グリッドには以下のコードを使用しました。

var grid = jQuery("#list5").jqGrid({
            url: '/home1/GetUserData',

                datatype: "json",
                mtype: "POST",
                colNames: ['Code', 'LoginID', 'Emailid', 'CreateDate', 'PostalCode', 'Mobile'],
                colModel: [
                            {name: 'Code', index: 'Code', width: '16%', editable: true, sortable: true },
                            { name: 'LoginID', index: 'LoginID', width: '16%', editable: true, sortable: true },
                            { name: 'Emailid', index: 'Emailid', width: '16%', editable: true, 

        sortable: true },
                              ],
                    rowNum: 10,
                    height: '100%',
                    scrollOffset: 0,
                    rowList: 10,
                    shrinkToFit: true,
                    pager: $("#pager2"),
                    editurl: "/home1/EditUserData",
                    caption: "Simple data manipulation"
                });
                jQuery("#list5").jqGrid('navGrid', '#pager2', { edit: false, add: false, del: true, search: false, refresh: false }, {}, {}, { url: '/home1/DeleteUserData' });
                jQuery('#list5').jqGrid('inlineNav', '#pager2', { edit: true, add: true},
                });
            });

だから誰かがそれを実装する方法を教えてください。

4

1 に答える 1

1

私はあなたの要件をよく理解していません。saveRowには多くのカスタマイズの可能性があります。prmNamesjqGrid のオプションを使用して、サーバーに送信されるすべてのパラメーターの名前を変更できます。saveRowextraparamのパラメーターを使用して、サーバーに送信できる追加情報を指定できます。コールバックを使用して、カスタムのシリアル化を実装できます。たとえば、データを JSON に変換できます。を使用すると、データがサーバーに正常に保存された後に、いくつかのカスタム アクションを作成できます。そのため、カスタムメソッドを実装する代わりに、機能を使用することをお勧めします。serializeRowDataaftersavefuncsaveRow

更新: カスタムを使用するナビゲーター アイコンが必要な場合は、 inlineNavsaveRowで「保存」ボタンを追加しないでください。inlineNavのオプションを使用できます。次に、 navButtonAddを使用して、元の「保存」ボタンとまったく同じように見えるカスタムアイコンを追加し、コールバックで「カスタム」を呼び出すことができます。save: falsesaveRowonClickButton

于 2012-04-28T14:49:29.687 に答える