ASP.NET Aries 高級開發教程:行內編輯事件怎么新增數據到后台(番外篇)


前提:

今天又網友又提出了一個問題,說行內編輯保存之前,怎么新增一些數據提交到后台?

對方說看了源碼,也沒找到怎么處理,這里就寫文給解答一下。

解答:

於是我看了一眼源碼,只能說你沒找到地方:

 

第1212行:

dg.PKColumn.Editor.BtnSave.onBeforeExecute(value, index, post_data)

在重寫這個事件里,第三個參數,就是要提交的參數,是個json

因此,要追加數據,只需要為json追加數據就可以了:

dg.PKColumn.Editor.BtnSave.onBeforeExecute=function (v,i,d){
d.XXX="myvalue";//追加數據。
}

如果你要的數據剛好在當前行里:(隱藏顯示【配置了#號傳遞數據】或者非隱藏) 

那么可以根據行索引先拿到行數據:

var row = null;
                    if (isTreeTrid) {
                        row = $.extend(true, {}, dg.datagrid("find", index));
                    }
                    else {
                        //data只存檔1級的數據,不適合treegrid
                        row = $.extend(true, {}, $.data(dg.$target[0], "datagrid").data.rows[index]);
                    }

拿行的時候根據情況選擇其中一種(如果只拿不修改,就不用$.extend克隆了)

下面$.data的寫法,是datagrid下兼容分組的寫法。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM