原因:data组件保存操作是针对整个data组件中的数据的!有些用户想编剧数据后只对当前行数据进行保存,如图:
解决方案:
把data组件中其他行数据的状态都改成NONE,只把当前行数据的状态改成EDIT,这样执行保存操作就只会保存当前行数据了!
//开头需要引入data, var Data = require(“$UI/system/components/justep/data/data”) Model.prototype.td6Click = function(event){ var zszsBaasData= this.comp("zszsBaasData"); /* *用于处理只保存当前行数据 *先将data中所有行数据状态设为NONE */ zszsBaasData.each(function(param) { zszsBaasData.setRowState(param.row, Data.STATE.NONE); }); //获取当前行 var row = event.bindingContext.$object; //再将当前行的数据状态设为EDIT zszsBaasData.setRowState(row, Data.STATE.EDIT); zszsBaasData.saveData({ "onSuccess":function(event) { justep.Util.hint("修改成功!", { type : 'success' }) } }); };
评一波