Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

Передача данных из родительского окна, в дочернее (hurt, оценка: 1)
Author Message
hurt
Guest





Карма: 388
   поощрить/наказать


PostPosted: Thu Jul 01, 2010 2:11 pm (написано за 2 минуты 20 секунд)
   Post subject: Передача данных из родительского окна, в дочернее
Reply with quote

доброго времени суток возник такой вопрос унас есть родетиельское окно функцией window.open открываем дочернее из этого дочернего окна можено обратиься к родительскому функцией opener и скажем вызвать функцию это прекрасно но как можно из родителського окна пердать информацию в дочернее окно когда оно уже открыто скажем у меня есть поле в которое я вбиваю текст как его передать в дочернее окно если такое возможно? заранее спасибо
Back to top
Александр Михалицын
Модератор



Joined: 23 May 2008
Posts: 1299
Карма: 83
   поощрить/наказать


PostPosted: Thu Jul 01, 2010 2:33 pm (спустя 21 минуту; написано за 32 секунды)
   Post subject:
Reply with quote

hurt,
в поиск.

А вообще - метод window.open возвращает ссылку на объект открываемого окна.
Back to top
View user's profile Send private message Send e-mail
hurt
Guest





Карма: 388
   поощрить/наказать


PostPosted: Thu Jul 01, 2010 2:46 pm (спустя 13 минут; написано за 1 минуту 2 секунды)
   Post subject:
Reply with quote

Александр Михалицын
это понятно и можно перадть парметр в форму но окно открываеться новое может как то можно имя второго окна указать для этой фнкции что бы она в открытое загрузила?
Back to top
Александр Михалицын
Модератор



Joined: 23 May 2008
Posts: 1299
Карма: 83
   поощрить/наказать


PostPosted: Thu Jul 01, 2010 3:20 pm (спустя 33 минуты; написано за 1 минуту 37 секунд)
   Post subject:
Reply with quote

Можно. Но лично я не уверен в кроссбраузерности. Лучше, все же откажитесь от этого подхода.

UPD: если бы вы сразу назвали тему верно, то нашли бы:
forum.dklab.ru/viewtopic.php?t=23075 попробуйте то решение,
оно не на 100 процентов в тему, НО там используется как раз тот подход, что вам нужен - попробуйте разобраться. (-;
Ради спортивного интереса так сказать...
Back to top
View user's profile Send private message Send e-mail
hurt
Guest





Карма: 388
   поощрить/наказать


PostPosted: Thu Jul 01, 2010 6:40 pm (спустя 3 часа 20 минут; написано за 1 минуту 29 секунд)
   Post subject:
Reply with quote

угу более менее ясно наверно))) а вызов функции или просто код подоюный такому

var w = open('', '', 'height=100,width=300');
                w.document.writeln('<' + 'script>var ctrl = null;<' + '/script>'
                        + '<input type="button" value="call parent method" onclick="ctrl.change()" />');



в google и опере вообще не работает?
Back to top
dimagolov
Участник форума



Joined: 04 Feb 2007
Posts: 1664
Карма: 96
   поощрить/наказать

Location: Christ Church, Barbados

PostPosted: Thu Jul 01, 2010 7:08 pm (спустя 27 минут; написано за 1 минуту 13 секунд)
   Post subject:
Reply with quote

hurt wrote:
в google и опере вообще не работает?
а должен? там вообще бред, в начале переменной ctrl присваивается null, а потом при нажатии кнопки вызывается ctrl.change(), который непонятно откуда должен взяться.
Back to top
View user's profile Send private message
hurt
Guest





Карма: 388
   поощрить/наказать


PostPosted: Thu Jul 01, 2010 7:12 pm (спустя 4 минуты; написано за 2 минуты 14 секунд)
   Post subject:
Reply with quote

дрындец теперь я вообще запутался давай те так скажу мне нужно открыть окно вовсех браузерах на автомате как это лучше сделать в ie и мозиле все открыв номрально в google и опере тупит пробывал через функцию и последующий вызов к примеру функция фис(){} abc(); не хочет ак можно сделать
Back to top
hurt
Guest





Карма: 388
   поощрить/наказать


PostPosted: Thu Jul 01, 2010 7:19 pm (спустя 6 минут; написано за 1 минуту 21 секунду)
   Post subject:
Reply with quote

не то написал к примеру вот так

Window.open(данные)- не открывает

function abc(){

Window.open(данные);

}

abc() --то же не открывает как быть нужно вызвать окно
Back to top
bæv
Модератор «Дзена»



Joined: 27 Aug 2003
Posts: 7275
Карма: 9989
   поощрить/наказать


PostPosted: Thu Jul 01, 2010 7:30 pm (спустя 11 минут; написано за 3 минуты 24 секунды)
   Post subject:
Reply with quote


!

hurt, forum.dklab.ru/about/todo/PravilaEtogoForuma-ProchitayteObyazatelno.html — получаете предупреждение за пренебрежительное отношение к участникам форума.
Текст, написанный с ошибками и без знаков препинания, очень сложен для восприятия.

Для вставки кода здесь есть специальная кнопка.
Back to top
View user's profile Send private message
Александр Михалицын
Модератор



Joined: 23 May 2008
Posts: 1299
Карма: 83
   поощрить/наказать


PostPosted: Fri Jul 02, 2010 9:33 am (спустя 14 часов 2 минуты; написано за 48 секунд)
   Post subject:
Reply with quote

dimagolov,
не совсем бред, это изврат, зато рабочий. Проверил.
Зато традиционные подходы не работают.... Может быть вы можете предложить что-то более лаконичное и рабочее? Буду рад увидеть.
Back to top
View user's profile Send private message Send e-mail
Александр Михалицын
Модератор



Joined: 23 May 2008
Posts: 1299
Карма: 83
   поощрить/наказать


PostPosted: Fri Jul 02, 2010 9:35 am (спустя 2 минуты; написано за 1 минуту 48 секунд)
   Post subject:
Reply with quote

hurt,
не работает потому что вы еще одну глубокомысленную строку упустили,
а именно - задать созданной переменной значение... К сожалению, если сразу объекту
окна присвоить свойство - ничего не работает, для того и используется такой изврат,
с созданием переменной, а уже затем присваивается значение. И потом - я же сказал, вы концепцию на вооружение возьмите, а не весь код. -)

Совсем, однако, народ думать не хочет...
Back to top
View user's profile Send private message Send e-mail
Александр Михалицын
Модератор



Joined: 23 May 2008
Posts: 1299
Карма: 83
   поощрить/наказать


PostPosted: Fri Jul 02, 2010 10:04 am (спустя 28 минут; написано за 5 минут 43 секунды)
   Post subject:
Reply with quote

Так, потестил еще, вношу уточнения:
как известно, document.write, на этапе когда страница отрендерина, очищает вывод и заменяет его своим,
поэтому в купе с ним, бессмысленно подгружать в методе open какой-либо файл. => нужно формировать html код окна скриптом,
и выводить через w.document.write. Тогда все будет работать. Вот коротенький пример передачи переменной:
Code (html): скопировать код в буфер обмена
<input (december.com/html/4/element/input.html) type="button" value="call child" onclick="show()" /> (december.com/html/4/element/.html)
<script> (december.com/html/4/element/script.html)
var show = function()
{
        var w = open('', '', 'height=100,width=300');
        w.document.writeln('< (december.com/html/4/element/.html)' + 'script>var ctrl = null;setTimeout(function() { alert(ctrl); }, 1000);< (december.com/html/4/element/.html)' + '/script>');
        w.ctrl = 'test';
}
</script>
Рассмотрим его,
во-первых, мне пришлось сделать именно кнопку, с обработчиком, который создает окно, потому что, например Опера, со своим popup блокером,
когда код находится в глоб. контексте, или запускается по таймеру, блокирует всплывающее окно, а JS интерпретатор ругается на якобы отсутствие объекта document у окна - ничего не работает.
во-вторых, как видите, код вывода переменной в окне, запускается по таймеру (возможно следует установить меньшее время, сейчас там 1 с.), это сделано потому, что значение переменной присваивается уже после запуска скрипта в окне, следовательно, если написать алерт сразу - будет null.

Как видите - не кроссбраузерно это все, и не красиво абсолютно. Сплошной изврат.
Back to top
View user's profile Send private message Send e-mail
Александр Михалицын
Модератор



Joined: 23 May 2008
Posts: 1299
Карма: 83
   поощрить/наказать


PostPosted: Fri Jul 02, 2010 1:17 pm (спустя 3 часа 12 минут; написано за 12 секунд)
   Post subject:
Reply with quote


М

Баллов добавил обоим темам - пусть повыше будут.
Back to top
View user's profile Send private message Send e-mail
Александр Михалицын
Модератор



Joined: 23 May 2008
Posts: 1299
Карма: 83
   поощрить/наказать


PostPosted: Thu Jul 08, 2010 12:40 pm (спустя 5 дней 23 часа 23 минуты)
   Post subject:
Reply with quote


М

Ветка выделена в отдельную тему «Спам»,
расположенную в форуме Мусоропровод (08 Июля 2010, 15:40).
Back to top
View user's profile Send private message Send e-mail
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML