2011-06-04 56 views
1

我有多種形式,我想通過一個Ext.Ajax.request調用來傳遞所有這些值。我怎樣才能做到這一點?如何從Ext.Ajax.request中的多個表單發送值?

var forme1 = this.form1.getForm().getFieldValues(); 
var forme2 = this.form2.getForm().getFieldValues(); 
var forme3 = this.form3.getForm().getFieldValues(); 
var forme=new Array(forme1,forme2,forme3); 
Ext.Ajax.request(
    { 
     url: 'save.php', 
     params: forme 
    }); 

回答

0

如果所有的值都需要在一個請求中提交,那麼我只需要使用一個帶有多個字段集的FormPanel。這樣Ext爲你做了很多工作。

否則你將需要做這樣的事情。

Ext.Ajax.request({ 
    url: 'SomeUrl', 
    params: Ext.encode({ 
     formData1: myForm1.getValues(), 
     formData2: myForm2.getValues(), 
     formData3: myForm3.getValues(), 
    }), 
    method: 'POST' 
    ... 
}) 
4

使用Ext.apply合併形式值對象連接在一起

var values = this.form1.getForm().getFieldValues(); 
Ext.apply(values, this.form2.getForm().getFieldValues()); 
Ext.apply(values, this.form3.getForm().getFieldValues()); 

Ext.Ajax.request({ 
    url: 'save.php', 
    params: values 
}); 
1

我只想用一個對象

var forme1 = this.form1.getForm().getFieldValues(); 
var forme2 = this.form2.getForm().getFieldValues(); 
var forme3 = this.form3.getForm().getFieldValues(); 
var forme = Ext.Object.merge(forme1,forme2,forme3); 

Ext.Ajax.request(
    { 
     url: 'save.php', 
     params: forme 
    }); 
相關問題