1

私は次のようにinlineNavを使用しています:

var inlineparams = { 
    addParams: {useFormatter:false},
    editParams: {extraparam: { 
                 "action": "ajaxgrid",
                 "subaction": "jqedit", 
                 "tableid": "sysbuglist",
                 "sessionid":"fd7c74d8-d3cb-102f-bd56-0015171f0bcc" 
             }},
    add:true,
    edit:true,
    save:true,
    cancel:true,
    aftersavefunc:reloadGrid};

$("#navgrid").jqGrid("inlineNav","#navgrid_bottompager", inlineparams);

だから、私はボトムページャーの追加、編集、保存、キャンセルボタンを使用しています。

質問:サーバーに保存した後、どうすれば制御できますか?サーバーへの保存はうまく機能しています。保存後にグリッドを更新したいだけです。

4

1 に答える 1

2

インライン編集のソースコードから、オプションまたは保存ボタンのコールバックのいずれにも、の明示aftersavefuncがないことがわかります。inlineNav

if(o.save) {
    $($t).jqGrid('navButtonAdd', elem,{
        ...
        onClickButton : function () {
            var sr = $t.p.savedRow[0].id;
            if(sr) {
                ...
                if( $($t).jqGrid('saveRow', sr, o.editParams) ) {
                    $($t).jqGrid('showAddEditButtons');
                }
            } 
        }

aftersavefuncただし、次の一部として渡すことができますeditParams

var inlineparams = { 
    addParams: {useFormatter:false},
    editParams: {extraparam: { 
                     "action": "ajaxgrid",
                     "subaction": "jqedit", 
                     "tableid": "sysbuglist",
                     "sessionid":"fd7c74d8-d3cb-102f-bd56-0015171f0bcc"},
                 aftersavefunc: reloadGrid},
    ...

それはそれをする必要があります。両方の操作がこのコールバックをサポートしているため、とだけaftersavefuncで呼び出されることに注意してください。editsave

于 2012-04-10T15:37:44.627 に答える