Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: lalex от 07 Октября 2002, 14:22:49

Название: передача параметров окну
Отправлено: lalex от 07 Октября 2002, 14:22:49
Есть документ с событием, например:
onclick="javascript:wins=window.open(\'users.cgi\',\'\');wins.document.forms[0].user.value=\'vasya\';"

Когда наступает это событие, открывается нужное окно, но из-за того что оно открывается не мгновенно, то операция wins.document.forms[0].user.value=\'vasya\' выдает ошибку:
wins.document.forms.0.user - не является объектом.

Если сначало открыть окно и после его открытия выполнить wins.document.forms[0].user.value=\'vasya\', то все работает.

Подскажите, как быть?
Название: передача параметров окну
Отправлено: Oak от 07 Октября 2002, 14:46:59
users.cgi - твоя?
тогда напиши \'users.cgi?name=vasya\'
а в скрипте предусмотри заполнение этого поля

или setTimeout("wins.document.forms[0].user.value=\'vasya\'",3000)
но это более криво
Название: передача параметров окну
Отправлено: PilotV от 07 Октября 2002, 15:00:45
Лень проверять, но еще есть подозрение, что wins\'у, может быть, можно onload ява-скриптом присобачить.
Название: передача параметров окну
Отправлено: Oak от 07 Октября 2002, 15:06:11
PilotV каким из?
JS - не выйдет по той же причине
CGI - да , но родителя может тоже уже не оказаться в живых :)
Название: передача параметров окну
Отправлено: lalex от 07 Октября 2002, 16:06:23
через cgi мне неудобно передавать, поэтому я тут нагенерил:

родитель:


...........
onclick="java script:add(\'vasya\')";
...............

дочка:
.......

............

Есть какие-нить предложения по усовершенствованию?
Название: передача параметров окну
Отправлено: PilotV от 07 Октября 2002, 16:17:48
Не, у меня была идея такого плана:

AAA

Но провалилась...
Название: передача параметров окну
Отправлено: Oak от 07 Октября 2002, 17:41:21
lalex  - ты пробовал проверять, ?:)))

while (1) - подвесит ИЕ наглухо.
Потому как ИЕ не многозадачное ... оно висит пока скрипт работает

И вообще - переучивайся уже под Виндовз програмить, а то привычки у тебя DOS-овские ;)

PilotV ты не понял! - главное там цикл (но лучше setTimeout конечно) и if (wins.onload)

без этого не имеет смысла - т.е как у тебя
Название: передача параметров окну
Отправлено: PilotV от 07 Октября 2002, 18:06:39
Я писал последний свой мессадж, еще не видя того варианта, - я просто свой описал. Но он не работает.
Название: передача параметров окну
Отправлено: lalex от 07 Октября 2002, 18:29:29
Oak ты прав, в том что подвешивает, но не наглухо.
Через некоторое время ~10сек. окно прогружается и ИЕ передает параметр.
Осталось setTimeout подобрать.
Название: передача параметров окну
Отправлено: aleandr от 08 Октября 2002, 08:29:31
Цитировать
через cgi мне неудобно передавать

ИМХО: если не удобно использовать CGI, то почему бы не использовать JS для разбора входных параметров? В users.htm встраиваешь маленькую функцию на JS, которая после onload обеспечивает разбор входных аргументов.

А еще можно один способ - через буфер: ненадежно, но забавно! ;)