我正在使用extjs网格并尝试从网格中弹出一个选定的行。 用例: 1)在顶部有一个带有修改按钮的网格 2)选择一行并单击按钮以打开弹出窗口 3)尝试在弹出窗口中显示数据 getSelectionModel()返回为空。 弹出窗口在控制器中。
以下是代码
Ext.define('App.controller.MakerController', {
extend : 'Ext.app.Controller',
models : [],
stores : ['AllowedAccessStore'],
views : [ 'makertabpanel','userinfogrid' ],
init : function() {
this.control({
'makertabpanel button[name= addNewUser]' : {
click : this.openDialog
},
'makertabpanel button[name= modifyUser]' : {
click : this.openmodifyDialog
}
});
},
,
openmodifyDialog : function() {
console.log("userinfoGrid 1:"+this.getUserinfoGrid());
var userinfoGrid = Ext.getCmp('userinfogridID');
console.log("userinfoGrid:"+userinfoGrid.getSelectionModel().getCount()); // Returns 0
console.log("hasSelection:"+ userinfoGrid.getSelectionModel().getSelection());
if (userinfoGrid.getSelectionModel().hasSelection()) {
var row = userinfoGrid.getSelectionModel().getSelection()[0];
console.log(row.get('id'));
this.userId = Ext.getCmp('usernameID').setValue(row.get('id'));
this.userFName = Ext.getCmp('userFirstName').setValue(row.get('fname'));
this.userLName = Ext.getCmp('userLastName').setValue(row.get('lname'));
}
//this.openDialog();
},
.
.
.