Отправить данные в отдельное окно JavaScript

Я создал новое всплывающее окно из существующей страницы, используя:

window.open("myUrl","myName","width=200,height=200");

Теперь в этом всплывающем окне у меня есть текстовый ввод и кнопка, я хочу создать метод onclick для кнопки, которая отправляет значение текстового ввода на страницу, создавшую всплывающее окно, без использования формы или php, это возможно?

 Ja͢ck24 мая 2012 г., 08:35

Ответы на вопрос(3)

Решение Вопроса

Вы можете использоватьwindow.opener ключевое слово

Допустим, у вас есть Javascript метод doSomething (value) {....} в вашем родительском классе, затем из вашего POPUP вы можете вызвать родительскую функцию, используя

window.opener.doSomething("here is my data from child sent to parent");

UPDATED

 Anomaly24 мая 2012 г., 18:41
Да, это работает, делаяwindow.opener Thanx
 24 мая 2012 г., 08:34
Точно, как я бы это сделал :)

Предполагая, что родительское и новое окна находятся в одном домене, вы должны иметь возможность напрямую манипулировать их средой JS:

var w = window.open("myUrl", "myName", "width=200,height=200");
var e = w.document.getElementById('someId');
// do something with element e

Если они находятся в разных доменах, вам может понадобитьсяwindow.postMessage или другие методы междоменного обмена сообщениями, если window.postMessage не поддерживается вашими целевыми браузерами.

 24 мая 2012 г., 21:59
Да, но вы все еще можете сделать это от родителя к ребенку.
 24 мая 2012 г., 09:31
Но от ребенка к родителю синтаксис отличается - и он запускается у ребенка
 24 мая 2012 г., 08:27
Неправильное направление
 24 мая 2012 г., 08:45
Зачем? Он хочет добавить обработчик элемента в созданном окне, который что-то делает в родительском окне. Это можно сделать в любом направлении.

Любой вызов открытого окна формирует запрос get в новом окне. Это очень простой способ передачи параметров, которые вы хотите отправить, используя сам URL, например:

var myUrl = "http://example.com/test?myName=" + myName;
window.open(myUrl,"windowName","width=200,height=200");

Теперь на странице вы можете получить myName в качестве параметра запроса. Пожалуйста, попробуйте это.

 24 мая 2012 г., 09:32
Все еще неправильное направление
 24 мая 2012 г., 08:31
исправил синтаксис

Ваш ответ на вопрос