2012-04-24 3 views
0

Я использую Ext.Form.Panel успешно, но я хочу использовать Ext.form.field.File на этот раз. Я смог отправить и загрузить данные, помещающие поле.файла info form.Panlen, который, я думаю, не единственный вариант. На данный момент у меня есть:ExtJS 4 using Ext.form.field.File вместо Ext.Form.Panel как отправить

Ext.create('Ext.form.field.File', { 
          id: 'ala-bala', 
          name: 'doc', 
          width: 300, 
          buttonOnly: true, 
          hideLabel: true, 
          listeners: { 
           'change': function(fb, v){ 
            var el = Ext.getCmp('ala-bala-nica'); 
            el.update('<b>Selected:</b> '+v); 

, которая является частью моей пристыкован панели инструментов и у меня также есть кнопка:

xtype:'button', 
        icon: g_settings.iconUrl + 'add-icon.png', 
        text: 'Add File', 
//     handler: this._addDocument 
        handler: function() { 
         var form = Ext.getCmp('ala-bala').getRawValue(); 
//      if(form.isValid()){ 
          form.submit({ 
           } 
          } 

очевидно, что я не могу использовать form.submit с этим, но я надеюсь, что есть способ сохранить my form.field.File и все еще иметь возможность отправлять и загружать мои файлы. Просто не могу понять.

Благодаря

Leron

ответ

1

Когда я имел дело с подобной проблемой, я был в основном создавая фиктивную форму и вызова submit() в этой форме. Что-то вроде этого:

var form = Ext.create('Ext.form.Panel', { 
    items: [ my_file_field ] 
}); 

form.getForm().submit({ 
    method: 'POST', 
    url: 'myservice.url', 
    ... 
}); 
+0

Да, это то, что я и сделал сначала. Но все кнопки находятся на панели инструментов, и когда я делаю панель там и добавляю кнопку «Загрузить», по какой-то причине она попадает под кнопку «Просмотр». Файл и панель инструментов становятся более широкими. Я либо должен выровнять обе кнопки в одной строке, либо мне нужно передать событие отправки другому. Невозможно сделать это тоже в данный момент. Как вы добавили кнопку загрузки? – Leron

+0

вам не нужно иметь две кнопки ... только один сделает – sha

+0

Хмм, не могли бы вы мне помочь? Я получаю одну кнопку, которую я использую для просмотра системы по умолчанию, она называется 'Browse..', как я могу отправить по желанию только с этой кнопкой или вы хотите отправить на выбор без какого-либо дальнейшего подтверждения, или я не получу вас правильно? – Leron

Смежные вопросы