Показать сообщение отдельно
  #1 (permalink)  
Старый 22.11.2010, 12:03
Профессор
Отправить личное сообщение для javascript_pupil Посмотреть профиль Найти все сообщения от javascript_pupil
 
Регистрация: 05.07.2009
Сообщений: 222

Как передать параметры из дочернего окна в родительское с задержкой?
Есть родительское окно. В нём стоит обычный select при изменении которого в текстовое поле подставляются выбранные значения из выпадающего списка. Всё прекрасно работает.

Потребовалось дать возможность пользователю добавлять собственные значения, а не только те, что предлагают опции выпадающего списка. Добавил в javascript if/else которые при выборе клиентской опции открывает новое окно. Окно открывается, пользователь производит какие-то действия, затем возвращает в родительское окно opener, всё возвращается, только проблема в том, что javascript уже отработал и возвращённое значение уже никому не нужно. Как быть?

Вот кусок кода:

var file_name = document.submit_form.file_from_select.value;

if (file_name == "new") {
window.open("bla-bla-bla");
}
...
req.open("GET", "script.cgi?file=" + , true);


Соответственно пока открывается новое окно javascript уже доходит до вызова GET, передает туда не данные из открывшегося окна (т.к. там пользователь еще не успел ничего выбрать), а "new", соответственно script.cgi такого значения не находит и нужной работы не выполняет.

Какой-то таймаут ставить я не понимаю как, ведь пользователь с этим новым окном может работать и минуту и 10 минут.

Как быть и есть ли вообще решение?

P.S. В примерах везде приводится открытие нового окна и только после выбора в нем некоего значения возврат к родительскому. В моем же случае у javascript'а уже есть набор необходимых значений и он их обрабатывает не дожидаясь возврата.
Ответить с цитированием