как из popap передать данные на страницу, откуда popap открыли
как из popap передать данные на страницу, откуда popap открыли
в документации postamessage описано как передать данные в popap, а как передать данные обратно, из popap на страницу и popap закрыть ?
нужно следующее:
открыть окно popap для ввода логина/пароля, и при нажатии "войти" обработать введенные данные, и если пользователь найден, передать данные пользователя обратно на страницу(заполнить форму), и закрыть popap
в документации postamessage описано как передать данные в popap, а как передать данные обратно, из popap на страницу и popap закрыть ?
нужно следующее:
открыть окно popap для ввода логина/пароля, и при нажатии "войти" обработать введенные данные, и если пользователь найден, передать данные пользователя обратно на страницу(заполнить форму), и закрыть popap
1 ответов
Отвечу на свой вопрос:
Код окна родителя, из которого открывается всплывающее окно:
<!-- Открываем новое окно -->
<a onClick="window.open('http://domen.com">Откырть новое окно</a>
<input id="inputname" value="" type="text">
<input id="inputemail" value="" type="text">
<input id="inputphone" value="" type="text">
Код во всплывающем окне:
<a onClick="window.open('http://domen.com">Откырть новое окно</a>
<input id="inputname" value="" type="text">
<input id="inputemail" value="" type="text">
<input id="inputphone" value="" type="text">
Код во всплывающем окне:
$(document).ready(function(){
if(window.opener) {
//Массив данных
var user = array(0=>"firstname", 1=>"lastname", 2=>"phone", 3=>"email");
//Определяем окно-родитель
var w = window.opener;
//Передаем данные из массива всплывающего окна в поля ввода окна родителя
w.$('#inputname').val(user[0]+" "+user[1]);
w.$('#inputemail').val(user[3]);
w.$('#inputphone').val(user[2]);
//Закрываем всплывающее окно
self.close();
}
});
Это же можно и без jquery написать
if(window.opener) {
//Массив данных
var user = array(0=>"firstname", 1=>"lastname", 2=>"phone", 3=>"email");
//Определяем окно-родитель
var w = window.opener;
//Передаем данные из массива всплывающего окна в поля ввода окна родителя
w.$('#inputname').val(user[0]+" "+user[1]);
w.$('#inputemail').val(user[3]);
w.$('#inputphone').val(user[2]);
//Закрываем всплывающее окно
self.close();
}
});
Это же можно и без jquery написать
$.ajax
Или чуть проще: $.post
Ну и всё это можно без jQ - XMLHttpRequest (рекомендуется к прочтению в любом случае)
Или чуть проще: $.post
Ну и всё это можно без jQ - XMLHttpRequest (рекомендуется к прочтению в любом случае)