moy是什么?
moy
是基于模型框架 kero
和 UI
框架 neoui
實現(xiàn)的應(yīng)用框架灿意,是前端集成解決方案估灿,為企業(yè)級應(yīng)用開發(fā)而生。
github地址:https://github.com/iuap-design/tinper-moy
step 5. 實現(xiàn)grid數(shù)據(jù)編輯和刪除
-
因為在上面已經(jīng)在html中加入了field為operate的列加入到了表格中了缤剧,見step 3馅袁。所以我們現(xiàn)在針對該屬性定義的rederType屬性中的值
optFun
,在pages/cardtable/cardtable.js
中的viewModel對象中加入對應(yīng)的方法荒辕,就可以顯示出修改和刪除圖標了:var viewModel = { ... //定義操作列的內(nèi)容 begin optFun: function(obj) { var delfun = "data-bind=click:event.delClick.bind($data," + (obj.gridObj.getDataTableRowIdByRow(obj.row)) + ")"; var editfun = "data-bind=click:event.editClick.bind($data," + (obj.gridObj.getDataTableRowIdByRow(obj.row)) + ")"; obj.element.innerHTML = '<div><i class="op uf uf-pencil" title="修改"' + editfun + '></i>' + '<i class=" op icon uf uf-del title="刪除" ' + delfun + '></i></div>'; ko.applyBindings(viewModel, obj.element); }, //定義操作列的內(nèi)容 end ... }
-
在
optFun
方法中動態(tài)的加入了修改和刪除圖標汗销,并綁定了相應(yīng)的點擊事件delClick
和editClick
。所以最后我們再往pages/cardtable/cardtable.js
中的viewModel.ev中加入對應(yīng)的方法:var viewModel = { ... event: { ... //點擊事件 begin editClick: function(index) { viewModel.index = index; $('#editPage').find('.u-msg-title').html("編輯"); viewModel.event.clearDt(viewModel.dtnew); var row = viewModel.dt1.getSelectedRows()[0]; viewModel.dtnew.setSimpleData(viewModel.dt1.getRowByRowId(index).getSimpleData()); $('#code').attr("readonly", "readonly"); window.md = u.dialog({ id: 'editDialog', content: '#editPage', hasCloseMenu: true }); }, delClick: function(index) { var row = viewModel.dt1.getSelectedRows()[0]; var data = viewModel.dt1.getRowByRowId(index).getSimpleData() u.confirmDialog({ msg: "是否刪除" + data.name + "?", title: "刪除確認", onOk: function() { viewModel.dt1.removeRowByRowId(index); }, onCancel: function() {} }); } //點擊事件 end } }
因為修改和新增是用的同一個彈出頁面抵窒,所以現(xiàn)在弛针,修改和刪除功能也完成了
到這里,我們已經(jīng)完成所有的之前提到的功能李皇,但僅僅是完成削茁,并不完善。
(全劇終)