jQuery easyui datagird編輯行刪除行功能的實(shí)現(xiàn)代碼
神馬是easyui
jQuery EasyUI是一組基于jQuery的UI插件集合,而jQuery EasyUI的目標(biāo)就是幫助web開(kāi)發(fā)者更輕松的打造出功能豐富并且美觀的UI界面。開(kāi)發(fā)者不需要編寫(xiě)復(fù)雜的javascript,也不需要對(duì)css樣式有深入的了解,開(kāi)發(fā)者需要了解的只有一些簡(jiǎn)單的html標(biāo)簽。
jQuery EasyUI為我們提供了大多數(shù)UI控件的使用,如:accordion,combobox,menu,dialog,tabs,tree,validatebox,window等等。
下面通過(guò)代碼看下easyui datagird編輯行刪除行功能,具體代碼如下所示:
function init(){ var editRow = undefined; var oldMoney = undefined; $("#dg").datagrid({ url:"../foreignexchange/fexLedgerManager.do?method=queryApplyData&parentId="+parentId, fitColumns:false,//自適應(yīng)寬度,占滿,不能和凍結(jié)列同時(shí)設(shè)置成true striped:true, //斑馬線效果 singleSelect:false, //是否單選 pagination:false, height:140, columns:[[ {field:"id", title:"主鍵", width:'10', align:"center",hidden:true}, {field:"applyNo", title:"申報(bào)單號(hào)", width:'250', align:"center",editor: { type: 'validatebox', options: { required: true } }}, {field:"exeMoneyString", title:"執(zhí)行金額", width:'200', align:"center",editor: { type: 'moneybox', options: {precision:2, required: true } }}, {field:"exchangeRate", title:"執(zhí)行匯率(%)", width:'210', align:"center",editor: { type: 'numberbox', options: {precision:5, required: true } }}, {field:"submitDate", title:"提交日期", width:'190', align:"center",editor: { type: 'datebox', options: { required: true } }}, {field:"executeDate", title:"執(zhí)行日期", width:'190', align:"center",editor: { type: 'datebox', options: { required: true } }} ]], toolbar: [{ text: '添加', iconCls: 'icon-add', handler: function () { if (editRow != undefined) { $("#dg").datagrid('endEdit', editRow); } if (editRow == undefined) { var submitDate = $("#submitDate").val(); $("#dg").datagrid('insertRow', { index: 0, row: {submitDate:submitDate} }); $("#dg").datagrid('beginEdit', 0); editRow = 0; } } }, /*'-', { text: '撤銷', iconCls: 'icon-redo', handler: function () { editRow = undefined; $("#dg").datagrid('rejectChanges'); $("#dg").datagrid('unselectAll'); } },*/ '-', { text: '刪除', iconCls: 'icon-remove', handler: function () { var row = $("#dg").datagrid('getSelected'); if(row){ var index = $("#dg").datagrid("getRowIndex",row); $("#dg").datagrid('deleteRow',index); }else{ $("#dg").datagrid('endEdit', 0); $("#dg").datagrid('deleteRow',0); editRow = undefined; } } }, '-', { text: '修改', iconCls: 'icon-edit', handler: function () { var row = $("#dg").datagrid('getSelected'); oldMoney = row.exeMoneyString; if (row !=null) { if (editRow != undefined) { $("#dg").datagrid('endEdit', editRow); } if (editRow == undefined) { var index = $("#dg").datagrid('getRowIndex', row); $("#dg").datagrid('beginEdit', index); editRow = index; $("#dg").datagrid('unselectAll'); } } else { } } }, '-', { text: '保存', iconCls: 'icon-save', handler: function () { var opeRow = editRow; $("#dg").datagrid('endEdit', editRow); var rows = $("#dg").datagrid('getChanges'); if(!rows ||rows.length==0){ alert("無(wú)修改數(shù)據(jù),無(wú)需保存!"); return false; } var allRows = $("#dg").datagrid('getData'); var executeMoney = $("#executeMoney").val(); var sum = 0; var money = 0; $.each(allRows.rows,function(i,row){ row.parentId = parentId; money = formatMeony(row.exeMoneyString); sum+=money; }); if(sum>executeMoney){ alert("執(zhí)行金額超出臺(tái)賬登記執(zhí)行金額!"); if(oldMoney){ $("#dg").datagrid('updateRow', { index: opeRow, row: {exeMoneyString:oldMoney} }); } $("#dg").datagrid('beginEdit', opeRow); $("#dg").datagrid('unselectAll'); return false; } //新增 var addRows = $("#dg").datagrid('getChanges','inserted'); //修改 var updateRows = $("#dg").datagrid('getChanges','updated'); //刪除 var delRows = $("#dg").datagrid('getChanges','deleted'); var addOrUpdate = $.merge(addRows,updateRows); var addOrUpdateStr = JSON.stringify(addOrUpdate); var delRowsStr = JSON.stringify(delRows); $.ajax({ type:'post', url:'../foreignexchange/fexLedgerManager.do', data : { "method" : $("#method").val(), "addOrUpdateStr" : addOrUpdateStr, "delRowsStr" : delRowsStr }, cache:false, dataType:'json', success:function(data){ if(data.success){ alert(data.msg); init(); }else{ alert(data.msg); } } }); } }], onAfterEdit: function (rowIndex, rowData, changes) { editRow = undefined; }, onDblClickRow:function (rowIndex, rowData) { if (editRow != undefined) { $("#dg").datagrid('endEdit', editRow); } if (editRow == undefined) { $("#dg").datagrid('beginEdit', rowIndex); editRow = rowIndex; var row = $("#dg").datagrid('getSelected'); oldMoney = row.exeMoneyString; } }, onClickRow:function(rowIndex,rowData){ if (editRow != undefined) { $("#dg").datagrid('endEdit', editRow); } } }); } function formatMeony(value){ var money =value; var temp = money.split(","); var result = ""; var value = 0; var size = temp.length; for (var j = 0; j < size; j++) { result = result + temp[j]; } value = parseFloat(result); return value; }
總結(jié)
以上所述是小編給大家介紹的jQuery easyui datagird編輯行刪除行功能的實(shí)現(xiàn)代碼,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
jquery js 獲取時(shí)間差、時(shí)間格式具體代碼
獲取獲得時(shí)間差、時(shí)間格式的方法有很多,下面為大家介紹下使用jquery及js實(shí)現(xiàn)的功能代碼2013-06-06jQuery實(shí)現(xiàn)合并表格單元格中相同行操作示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)合并表格單元格中相同行操作,結(jié)合實(shí)例形式分析了jQuery針對(duì)table表格實(shí)現(xiàn)單元格合并的相關(guān)操作技巧,需要的朋友可以參考下2019-01-01Jquery Validate 正則表達(dá)式實(shí)用驗(yàn)證代碼大全
jQuery.validate 的正則驗(yàn)證功能,包括手機(jī)號(hào)碼、電話號(hào)碼、郵政編碼、QQ號(hào)碼、IP地址、字母和數(shù)字、中文的驗(yàn)證等2013-08-08jQuery實(shí)現(xiàn)數(shù)字華容道小游戲(實(shí)例代碼)
這篇文章主要介紹了jQuery實(shí)現(xiàn)數(shù)字華容道小游戲功能,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-01-01使用JQuery實(shí)現(xiàn)Ctrl+Enter提交表單的方法
這篇文章主要介紹了使用JQuery實(shí)現(xiàn)Ctrl+Enter提交表單的方法,需要的朋友可以參考下2015-10-10jQuery formValidator表單驗(yàn)證插件開(kāi)源了 含API幫助、源碼、示例
ajaxValidator函數(shù)在提交后發(fā)生錯(cuò)誤,停留在本頁(yè)面后,再次觸發(fā)校驗(yàn)會(huì)讓提示內(nèi)容一直處于onload狀態(tài)。2008-08-08jQuery實(shí)用小技巧_輸入框文字獲取和失去焦點(diǎn)的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)?lái)一篇jQuery實(shí)用小技巧_輸入框文字獲取和失去焦點(diǎn)的簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-08-08