我有ng-grid选项:
afterSelectionChange: function (row, event) {
console.log("Event: " + event);
console.log("Row: " + row.rowIndex);
},
第一次选择一行时,它按预期工作。第二次,它触发两次,一次为行离开,另一次为新行。这可以。问题是,我想对新行采取一次行动。我能做到的唯一方法是检查事件。但事件未定义。
输出:
Event: undefined activityGridController.js:13
Row: 0 activityGridController.js:14
Event: undefined activityGridController.js:13
Row: 1
问题是,如何确定新行?
答案 0 :(得分:9)
您可以使用beforeSelectionChange事件设置额外的属性。 像这样的东西
beforeSelectionChange: function(row) {
row.changed = true;
return true;
},
afterSelectionChange: function (row, event) {
if (row.changed){
console.log("deal with row " + row.rowIndex);
row.changed=false;
}
},
答案 1 :(得分:5)
检查row.selected 第一行应为false,发送行应为true。
if(row && row.entity){
if(row.selected){
var selectedEntity = row.entity;
}
}