Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   Динамическое создание вкладок (https://javascript.ru/forum/extjs/6103-dinamicheskoe-sozdanie-vkladok.html)

mwnuke 10.11.2009 17:34

Динамическое создание вкладок
 
Подскажите, пожалуйста, как грамотно реализовать следующее:

Есть Ext.TabPanel.
При нажатии на некую кнопку на сервер посылается ajax-запрос, сервер возвращает описание вкладки, которую необходимо создать и добавить в TabPanel.

Таким образом разные кнопочки создают новые разные вкладки: это могут быть вкладки с гридами внутри, формами, чем угодно.

Интересуют тонкости этого процесса: в каком виде сервер должен вернуть информацию о создаваемой вкладке и как полученный ответ привязать к TabPanel.

Например, в случае с созданием окон, дело обстоит проще: серверу достаточно вернуть ответ типа:

<script type="text/javascript">
Ext.onReady(function(){
    Ext.MessageBox.alert('раз', 'два');
});
</script>


А вот как с вкладками быть - не пойму...

Подтолкните на верный путь. :)

kez 11.11.2009 15:55

я думаю что сервер должен возвращать не javascript код, а описание вкладки - в формате JSON. После того как пришел ответ с сервера вам необходимо его распарсить и на основе полученных данных добавлять вкладки в TabPanel используя метод add()

mwnuke 12.11.2009 12:21

Да.
Получилось:

Ext.Ajax.request({
       url: '/test/hi',
       success: function(response){
           responseObj = Ext.util.JSON.decode(response.responseText);
           sysTabs.add(responseObj);
       }
    });


И все отлично работает. Спасибо! :)


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