Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Применение библиотек > Добавление поля в форму


Автор: Paher 28.8.2009, 14:44
Добрый день! 

Может кто сталкивался с такой же проблемой.
Имеется форма, в ней кнопка. При нажатии кнопки должно добавляться поле NumberField c fieldLabel. Однако, в нужном месте появляется только поле без метки. Код примерно такой:

Код

                new Ext.form.FieldSet({
                 autoHeight:true,
                 autoWidth:true,
                 title: 'Информация',
                 items: [{
                        layout: 'column',
                        items: [{
                            columnWidth:.6,
                            layout: 'form',
                            items: [{
                                xtype: 'numberfield',
                                fieldLabel: 'Поле 1',
                                name: 'field1',
                                width: 200,
                                allowBlank: true
                            }]
                        },{
                            columnWidth:.4,
                            layout: 'form',
                            items: [{                            
                                xtype: 'button',
                                text: 'Добавить Поле',
                                handler: function(){
                                    new Ext.form.NumberField({
                                        renderTo: 'addfield',
                                        fieldLabel: 'Поле 2',
                                        name: 'field 2',
                                        width: 200,
                                        allowBlank: true,
                                    })
                                }
                            }]
                        }]
                    },{  
                        // Здесь должно вставляться поле
                    },{
                        xtype: 'textfield',
                        fieldLabel: 'Поле 3',
                        name: 'field 3',
                        width: 445,
                        allowBlank: false
                    }]
                 })


На http://extjs.com/deploy/dev/docs/ для fieldLabel следующая заметка

Note: this config is only used when this Component is rendered by a Container which has been configured to use the FormLayout layout manager (e.g. Ext.form.FormPanel or specifying layout:'form').

Я уже пробовал в указанном месте такие  способы

Код

layout: 'form',
id: 'addfield'


и 

Код

layout: 'form',
items:[{
     id: 'addfield'
}]


Но ничего не помогает

Автор: comtat 1.9.2009, 08:57
Попробуй просто скрывать поле до нажатия кнопки

Автор: Paher 4.9.2009, 09:57
Дело в том, что там должно появится не одно поле, а по количеству нажатий на кнопку.  Их может быть и 0 и 100. Так что вариант со скрытым полем не пройдет

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)