Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 09.04.2014, 19:26
Интересующийся
Отправить личное сообщение для prihod Посмотреть профиль Найти все сообщения от prihod
 
Регистрация: 10.12.2011
Сообщений: 10

Доступ к элементам родительского окна
Есть окно в котором есть пару textfield элементов , а также кнопка при клике по которой вызывается еще одно окно в котором в котором происходят некие действия после чего нужно как то передать значения в textfield элементы первого окна как это сделать без использования id для textfield элементов
Ответить с цитированием
  #2 (permalink)  
Старый 14.04.2014, 22:48
Аватар для Makarov
Профессор
Отправить личное сообщение для Makarov Посмотреть профиль Найти все сообщения от Makarov
 
Регистрация: 08.07.2013
Сообщений: 212

Мне приходят в голову например следующие способы:
1. "А чо нам библиотека, мы сами разберемся"
Что такое окно в котором лежат эти текстфилды.? По сути большой джаваскриптовый объект. Что мешает нам задать ему свойство? Да ничего, кроме здравого смысла. Берем на уровне окна или другого родительского контейнера определяем переменную mySuperParama и общаемся через нее. Что-то типа
Ext.create('Ext.window.Window', {
title: 'Hello',
layout: 'column'
...
mySuperParam: 'SmthCoolHere' //Через это общаемся
})

В нужных обработчиках обращаемся к этому контейнеру скажем по id (только же к текстфилдам нельзя, правильно? =) ) и переписываем этот mySuperParam. Если надо, какое-нибудь событие зажигаем на то что его переписали.

2. Кроме ext.getCmp есть вагон способов получить компоненты по-другому. Например используя класс Ext.Queryable. Позволяет обращаться к элементам используя селекторы, похожие на цссные. Есть нюансы: класс приватный и сверху большими буквами написано что на его существование полагаться не стоит. То есть в какой-нибудь версии фреймворка он может отвалиться. Но:
- сенча вообще плюет на обратную совместимость, поэтому миграция с одной версии на другую готового продукта - это и так и так головная боль.
- работает на последнем четвертом ексте он точно норм - у нас в компании во внутреннем фреймворке он широко используется.

3. По крайней мере в трешке есть замечательная штука createDelegate, которая позволяет выполнить функцию с тем контекстом с которым ты скажешь. В четверке не видел, но скорее всего тоже есть что-нибудь подобное. С похожей целью часто встречается конфиг scope.

Что использовать - зависит от фантазии и от того что ты хочешь сделать конкретно)

Последний раз редактировалось Makarov, 14.04.2014 в 22:53.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
фокус на grid родительского окна demi ExtJS 0 24.11.2013 19:43
Доступ к элементам соседнего окна v_n_smirnov Events/DOM/Window 1 22.08.2012 18:08
Обращение к элементам другого окна john1123 Events/DOM/Window 2 21.07.2011 18:06
Нажать ссылку в iframe из родительского окна max124rus jQuery 1 12.03.2011 13:47
Закрытие родительского окна без диалога Гость Общие вопросы Javascript 1 28.10.2008 00:01