我有以下代码,我直接从ExtJs的教程中获得:
updateUser: function (button) {
var win = button.up('window'),
form = win.down('form'),
record = form.getRecord(),
values = form.getValues();
record.set(values);
win.close();
现在,我正在进行一些修改以满足我的需求,以下3行返回的是什么:
form = win.down('form'),
record = form.getRecord(),
values = form.getValues();
根据文档,上面的down()
方法返回Ext.Container.AbstractContainer
,根据文档甚至不应该使用它。此外,它没有getRecord()
或getValues()
方法。任何人都可以解释这里发生了什么以及那些2个调用返回的对象是什么类型?
答案 0 :(得分:3)
当你致电up
时,它会查找传递的选择器的祖先。当你调用down
时,它会返回传递的选择器的后代。 form.getRecord()
返回表单的模型实例。并form.getValues()
返回表单中输入的实际值。
例如:模型有3个字段id, name, email
和一些配置,当你调用form.getRecord()
它返回模型实例时,基本上是骨架。
form.getValues()
返回输入值的位置
例如:如果在id=1, name=xxxxx, email=aaaaa@test.com
表单中输入以下值
当你致电form.getValues()
时,它会返回一个对象
{
id:1,
name:'xxxxx',
email:'aaaaa@test.com'
}
我希望这能回答你的问题