2017-04-11 33 views

回答

1

在這種情況下,我會嘗試給兩個不同的ID的形式。接下來,從它們中檢索值並進行合併如果字段名稱不同。

var first_form_values = Ext.getCmp('first-form').getForm().getValues(); 
var second_form_values = Ext.getCmp('second-form').getForm().getValues(); 
var all_values = Ext.Object.merge(first_form_values , second_form_values); 

然後你把所有的值,你可以通過Ext.Ajax的向他們發送等

完整的示例:

Ext.create('Ext.window.Window', { 
     title: 'First Form', 
     height: 200, 
     width: 400, 
     layout: 'fit', 
     items: { 
      xtype: 'form', 
      id: 'first-form', 
      items: [ 
       { 
        xtype: 'textfield', 
        fieldLabel: 'First field', 
        name: 'first-field', 
       } 
      ] 
     }, 
     buttons: [ 
      { 
       text: 'Show second form' 
       handler: function() 
       { 
        Ext.create('Ext.window.Window', { 
         title: 'Second Form', 
         height: 200, 
         width: 400, 
         layout: 'fit', 
         items: { 
          xtype: 'form', 
          id: 'second-form', 
          items: [ 
           { 
            xtype: 'textfield', 
            fieldLabel: 'Second field', 
            name: 'second-field', 
           } 
          ] 
         }, 
         buttons: [ 
          { 
           text: 'Submit' 
           handler: function() 
           { 
            var first_form = Ext.getCmp('first-form'), 
             second_form = Ext.getCmp('second-form'); 
            if(first_form && second_form) 
            { 
             var fist_form_values = first_form.getForm().getValues(), 
              second_form_values = second_form.getForm().getValues(); 

             var values = Ext.Object.merge(fist_form_values, second_form_values); 

             // You have all values from two forms 
            } 


           } 
          } 
         ] 
        }).show(); 
       } 
      } 
     ] 
    }).show(); 
+0

我已經嘗試了所有你是什麼doing.it完美的作品。但是,我的第一個表單包含一個文件域,而我只是獲得了表單的值而沒有filefield.it,這讓我感到困惑,謝謝 – macarole

相關問題