gpt4 book ai didi

javascript - extjs - 表单中嵌入的对象/名称

转载 作者:行者123 更新时间:2023-11-28 08:54:43 24 4
gpt4 key购买 nike

我目前使用 setValues() 使用多个对象来填充 extjs 表单的各个部分。例如:

someForm.getForm().setValues({prop1: foo}); 

有没有办法可以命名表单的元素 object1.prop1object2.prop2 等。这样我就可以执行单个 someForm.getForm().setValues({object1: object1, object2: object2, ...})?即嵌入的对象将被解析出来。

此外,有没有办法在POST之前拦截上传以映射(object1.prop1object1.prop2...) --> object1: {prop1: *, prop2: *, ...} ?

这比必须执行诸如映射 object1.prop1 --> object1_prop1 -> object1.prop1< 之类的操作要容易得多/p>

感谢您提供的任何帮助

最佳答案

是的,您可以这样做,但方式与您指定的方式不同。会有两种情况:

1)您有一个表单(假设修改),并向服务器发出请求以获取数据。您可以做的是创建一个模型,并为表单字段指定名称。并使用服务器中的值将模型分配给表单。参见下文,例如

// define StudentModel with fields firstName, lastName, address, and so on....
// form with fields, please have field attribute 'name' with values defined in model
// e.g. {xtype : 'textfield', name: 'firstName'}, {xtype : 'textfield', name: 'lastName'}, and so on
var form = this.getForm();
form.reader = Ext.create('Ext.data.reader.Json',{ // Use XML reader if you are using XML response.
success: '@success',
model: 'StudentModel'
});

form.load({ // load method will load data automatically from server to form fields
url: '/getStudentData',
params:{
studentId: 24
}
});

2)其他情况是您本地有可用数据(假设在数组或变量中)并且您希望将该数据分配给表单,使用 StudentModel 创建一条记录,如下所示,并将记录分配给表单:

var record = Ext.create('StudentModel', {
firstName: 'Nandkumar',
lastName: 'Tekale',
address: 'RH 26, some street, city'
});

form.loadRecord(record); // You are done, all values to form are assigned.

关于javascript - extjs - 表单中嵌入的对象/名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18646585/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com