ExtJS 4.2 同名表单中的两个文本字段

ExtJS 4.2 two textfields in a form with same name

我有一个表单,表单中有两个具有不同 itemId 但名称相同的文本字段,因为当我调用 getForm().loadRecord(record) 来填充表单中的文本字段时,只有一个与数据,另一个为空。

var form=new Ext.form.Panel({
        itemId:'form1',
        items:[
               {
                   xtype : 'textfield',
                   fieldLabel :'textfield1',
                   name : 'value1',
                   itemId : 'textfield1',
                   readOnly:true
               },
               {
                   xtype : 'textfield',
                   fieldLabel :'textfield2',
                   name : 'value1',
                   itemId : 'textfield2'
               }
        ]
});

名称 属性 只能在同一个表单中使用一次,以使用商店中的相同值填充两个不同的文本字段? 我在 sencha 的文档中进行了搜索,但没有找到任何关于单独使用名称或唯一名称的信息 属性。

是的,名称属性只能在同一个表格中使用一次。 您可以使用

设置第二个字段的值
Ext.ComponentQuery.query('#textfield2')[0].setValue(YourValue);

尝试在模型

中使用'mapping'
MODEL:

  fields: [
    {name: 'value1',  type: 'string'},
    {name: 'valueSameAs1',  type: 'string', mapping: 'value1'}
  ]


VIEW:

 var form=new Ext.form.Panel({
    itemId:'form1',
    items:[
           {
               xtype : 'textfield',
               fieldLabel :'textfield1',
               name : 'value1',
               itemId : 'textfield1',
               readOnly:true
           },
           {
               xtype : 'textfield',
               fieldLabel :'textfield2',
               name : 'valueSameAs1',
               itemId : 'textfield2'
           }
    ]
 });

看看:

http://docs.sencha.com/extjs/4.2.0/#!/api/Ext.data.Field-cfg-mapping

http://docs.sencha.com/extjs/4.2.0/#!/api/Ext.data.Field-cfg-convert