簡體   English   中英

如何使用選項卡從Ext.FormPanel提交數據?

[英]How to submit data from Ext.FormPanel with tabs?

FormPanel上有幾個選項卡:

在此輸入圖像描述

碼:

var podform = new Ext.FormPanel({
 labelAlign: 'left',
 id: 'tab_6',
 frame:true,
 title: 'Договоры подряда',
 bodyStyle:'padding:5px 5px 0',
 width: 600,
 listeners: {
'activate' :  function(podform,records,options) {
       console.log("store:"+store_form);
    this.loaded = true;
    var record = store_form.getAt(0);
    podform.getForm().loadRecord(record);
}
 },
 reader : new Ext.data.XmlReader({
record : 'zem',
//      success: '@success'
}, [
  ]),
 items: []
});

podform.add(tabs_pod);

現在我嘗試向服務器提交數據:

    podform.addButton({
    text: 'Submit',
    //disabled:true,
    handler: function(){
        podform.getForm().submit({
            url:url_servlet+'submit.jsp',
            waitMsg:'Saving Data...',
            success: function(form, action) {
                Ext.Msg.show({
                 title:'Success'
                ,msg:'Form submitted successfully'
                ,modal:true
                    ,icon:Ext.Msg.INFO
                ,buttons:Ext.Msg.OK
                });
            }
        });
    }
});

但是螢火蟲說我只用我見過的面板提交數據。 這意味着如果我沒有點擊第二個標簽我就無法從中獲取數據。
有可能解決它嗎?

UPDATE

當我使用deferredRender:false,第一個選項卡顯示正常,但另一個選項卡如下所示:

在此輸入圖像描述

我認為您遇到的問題是選項卡面板不會將非活動選項卡中的字段渲染為延遲渲染 - 這是一種性能增強技術。 您可以嘗試使用deferredRender:false顯式強制渲染這些子面板deferredRender:false

在這里看到完整的文檔

ExtJS 3.4 - > http://docs.sencha.com/ext-js/3-4/#!/api/Ext.TabPanel-cfg-deferredRender

ExtJS 4.1 - > http://docs.sencha.com/ext-js/4-1/#!/api/Ext.tab.Panel-cfg-deferredRender

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM