Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   Добавление элементов (https://javascript.ru/forum/extjs/13566-dobavlenie-ehlementov.html)

lastbronetrain 04.12.2010 03:09

Добавление элементов
 
Во как переработался даже тему неправильно назвал.
Удаление элементов
Есть форма на которой динамически добавляются поля. Необходимо при закрытии этой формы убрать все добавленные поля и привести ее к первоначальному виду. Т.е. их необходимо удалить.
Как в extjs можно удалить элемент?

underW 04.12.2010 13:12

Цитата:

Сообщение от lastbronetrain (Сообщение 82201)
Во как переработался даже тему неправильно назвал.
Удаление элементов
Как в extjs можно удалить элемент?

Если исходить из того, что у тебя форма, то удалить компоненты из формы можно так:
oFrom.remove( Component/String component, [Boolean autoDestroy] )

underW 04.12.2010 13:25

как у тебя там все реализовано я не знаю, но могу предложить еще вот такой вариант:
предположим, что форма у тебя размещена в окне, и закрытие формы - сводится к закрытию окна, тогда можно установить для окна:

closeAction: 'close'


и все.

lastbronetrain 04.12.2010 17:19

у меня на в окне расположена форма.
окно я закрываю методом hide.
если использовать метод close, то оно удалиться и его придется занова создавать?
Как это реализовать?
я удалял новые элементы в цикле методом desroy :
Ext.getCmp(id).destroy();

underW 04.12.2010 23:18

ну, глянь это:
Ext.onReady(function(){


function ShowWindow(){ new Ext.Window({

title	: "Window",
height	: 400,
width	: 400,
items	: new Ext.FormPanel({
id	: 'form',
        labelWidth: 75, 
        frame:true,
        title: 'Simple Form',
        bodyStyle:'padding:5px 5px 0',
        width: 350,
        defaults: {width: 230},
        defaultType: 'textfield',
        items: [{
                fieldLabel: 'First Name',
                name: 'first'
            }],
        buttons: [{
            text: 'Добавь поле',
            handler: function(btn)
            				{btn.findParentByType('form').add({
            							xtype: 'textfield',
 						                fieldLabel: 'First Name',
                						name: 'test'
            });Ext.getCmp('form').doLayout();
        }
       
            }]
    })
,
closeAction: 'close'


}).show()
}

new Ext.Button(
{
text	: "Покажи окно",
handler : function(){ShowWindow()},
renderTo : Ext.getBody()
}
)
})

lastbronetrain 05.12.2010 00:05

Спасибо, с этим разобрался
Теперь такой вопрос:
Можно ли управлять ползунком полосы прокрутки?
т.е. чтобы при добавлении нового элемента на форму он сам прокручивался в конец, а не стоял на месте?

underW 05.12.2010 00:17

можно:
new_element.focus()

lastbronetrain 05.12.2010 15:59

Спасибо, помогло


Часовой пояс GMT +3, время: 13:07.