1

我有一个窗口,里面有像

items:{
        xtype:'form',
        items: [{
            xtype: 'numberfield',
            fieldLabel: '1',
            name: 'va[]'
        },{
            xtype: 'textfield',
            fieldLabel: '2',
            name: 'va[]'
        },{
            xtype: 'textfield',
            fieldLabel: '3',
            name: 'va[]'
        }]
    },

我使用加载表单将数据从服务器获取到我的表单

    var form = win.down('form').getForm();
    form.load({         
        url: 'load.php',
        success:function(form, action){
            win.show();         
        }
    });

我的 json 看起来像

{"success":true,"data":{"va":["1","2","3"]}}

但是加载成功后我的表单是空白的(未设置值)

怎么做 谢谢

4

1 回答 1

1

尽管action您可以访问response. 然后,您可以获取数据并手动分配。您可能需要一个唯一的itemId,因为您的所有字段都具有相同的名称。就像是:

form.load({
  url: 'load.php',
  success: function(form, action) {
    var me = this,
        data, i;
    try {
      data = Ext.decode(action.response.responseText);
      console.log(data); //outputs data.success, data.data.va in your console.
      if(data.data && Ext.isArray(data.data.va)) {
        for(i = 0; i < data.va.length; i++) {
          //here do your logic to populate the fields...
        } 
      }
    }catch(e){}
  }
});
于 2013-10-04T16:10:02.180 回答