Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   Получить элемент в window по классу (https://javascript.ru/forum/extjs/29029-poluchit-ehlement-v-window-po-klassu.html)

khusamov 12.06.2012 00:04

Включите подсветку кода. Каша ведь на экране.

khusamov 12.06.2012 00:09

Так у вас обработчик находится не в инспекторе оказывается. А в контроллере. Конечно up тут не будет работать.

'inspector button[action=goto]':{click: this.gotoPage, delegate: this},

khusamov 12.06.2012 00:12

Где у вас происходит создание экземпляра класса AM.view.inspector?

khusamov 12.06.2012 00:14

В общем я бы в этом случае при создании экземпляра AM.view.inspector сохранил бы на него ссылку в контроллере, чтобы в методе gotoPage иметь возможность ссылаться на окно.

alex3112 12.06.2012 00:33

Решил проблему:
var iframe = event.findParentByType('inspector').getEl().select ('iframe').elements[0];

Ext.get(iframe).set({src: "http://habrahabr.ru"});

Спасибо за помощь.

khusamov 12.06.2012 06:06

Ну, это какое-то не спортивное решение: event.findParentByType
Как заплатка пойдет.

alex3112 13.06.2012 00:15

Согласен. Но как сделать по-другому пока что не соображу.
И еще: не могу задать значение textfield c классом url.

Пробую:
event.findParentByType('inspector').getEl().select ('.url').elements[0];

возвращает элемент таблицы. У него действительно есть класс url, но это не input. Метод setValue к нему неприменим. Не подскажете как быть?

khusamov 13.06.2012 01:00

У вас textfield компонент. Соответственно его надо искать не как элемент DOM, а как компонент Ext.

Цитата:

Но как сделать по-другому пока что не соображу.
Я же написал -- хранить в контроллере.


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