EXTJSMVCアーキテクチャを使用してアプリケーションを開発しています。システム内のユーザーのリストで構成されるデータビューを作成しました。データビューの各項目は3つのボタンで構成されています。それらの1つは編集ボタンで、クリックすると別のビューが開きます。このビューは、ユーザーの詳細を編集できるフォームで構成されています。ここで、フォームを開いたときに、ユーザーの詳細をフォームのフィールドにロードする必要があります。
では、ユーザーにそれぞれ適切なデータが読み込まれるように、データビューからフォームにデータを送信するにはどうすればよいですか?
コードは次のとおりです。
コントローラ
init : function() {
this.control({
'button[action=addUsers ]' : {
click : this.addUsers
},
'#userlist' : {
itemclick : this.userListSelectionChange
}
})
},
userListSelectionChange : function(view, record, h, ind, evt) {
console.log('user List clicked')
var edit = evt.getTarget('a.icon-edit-32');
var deletebt = evt.getTarget('a.icon-delete-32');
if (edit != null) {
var name = record.get('Name');
console.log(name);
this.showHWindow(record);
}
if (deletebt != null) {
var name = record.get('Name');
console.log(name);
this.showOffWindow();
}
},
showHWindow()メソッドが呼び出されると、フォームが開き、その特定のユーザーのデータをフォームにロードする必要があります。そして、その正しい名前を印刷しているにもかかわらず
var name = record.get('Name');
このデータをフォームに送信する方法がわかりません。
また、loadRecordメソッドを使用しようとしましたが、フィールドが空です。
this.euWin = Ext.create('Campus.view.EditUsers');
var f = this.getEdituserform().getForm();
f.loadRecord(record);
this.euWin.showWin();