powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / document.open по типу диалогового окна и возврат данных (JS)
10 сообщений из 10, страница 1 из 1
document.open по типу диалогового окна и возврат данных (JS)
    #38856891
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго дня!

Понимаю, что идея вероятно бредосная, но вдруг есть такое решение.

Задача.
Имеем документ, на котором есть кнопка, клацаем на нее, (выполняется document.open) открывается новое окно-форма для ввода/выбора значений, жмем "ок" и данные из окна-формы возвращаются обратно в виде массива, затем окно-форма закрывается (document.close). Ну а если юзер жмет "отмена" или закрывает окно или тупит (тут сработает таймер и сам закроет окно) - ничего не возвращается.

Сразу скажу что ни к какому серьезному проекту это не будет относиться - типа домашней лабуды.

Возможна ли такая реализация?

Писать кучу текста и играться с z-индексами не хочу принципиально.
...
Рейтинг: 0 / 0
document.open по типу диалогового окна и возврат данных (JS)
    #38856892
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тут же - с куками не работал (еще не умею) подозреваю что можно в них писать, но как вариант уже мне не нравится.
...
Рейтинг: 0 / 0
document.open по типу диалогового окна и возврат данных (JS)
    #38856903
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Imperous,

сделать можно все... подсказка... передавать ничего не надо, поскольку в дочернем окне становиться доступен window.opener
...
Рейтинг: 0 / 0
document.open по типу диалогового окна и возврат данных (JS)
    #38857037
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kunaksergeyImperous,

сделать можно все... подсказка... передавать ничего не надо, поскольку в дочернем окне становиться доступен window.opener

пасиб, то что надо.

но столкнулся со следующей фигней - window.opener.document.getElementById('m1') в IE и в FF работает, а в хроме нет...
При этом хром понимает что "window.opener" это объект, а вот это "window.opener.document" - уже не видит...
...
Рейтинг: 0 / 0
document.open по типу диалогового окна и возврат данных (JS)
    #38857041
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ничо не понимаю, нашел такой пример. и он работает...
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<html>
<head>
<script>
function chfun()
{    wind=window.open();
    wind.document.writeln("<input type='Button' value='Пуск' onclick=\"alert(opener.document.getElementById('element').innerHTML)\">");
    wind.document.close();
}
</script>
</head>
<body>
<div id="element" onclick="chfun()">Привет!</div>
</body>
</html> 
...
Рейтинг: 0 / 0
document.open по типу диалогового окна и возврат данных (JS)
    #38857046
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а вот тут не работает, собственно тоже из примера из инета
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
<html>
    <head>
    </head>
    <body OnUnload="if (myWin) myWinClose()">
        <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
            var myWin
            function getInfo() {
                myWin=open("myWin.html","Пробное окно","height=250, width=300");
            }
        </SCRIPT>
        <input type="button" value="Введите информацию о себе" onClick="getInfo()"><br>
        <div  id="info"></div>
    </body>
</html>



файл myWin.html
Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
<html>
    <body>
        <SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
            function commit() {
		var info=opener.document.getElementById("info");
		var name=document.getElementById("name").value;
		var sname=document.getElementById("sname").value;
		var birth=document.getElementById("birth").value;
		var s="Ваше имя: "+name+"<br>";
                s=s+"Ваша фамилия: "+sname+"<br>";
                s=s+"Ваш год рождения: "+birth+"<br>";
		info.innerHTML=s;
		opener.focus();
		window.close();
	}
        </SCRIPT>
        <h1>Введите информацию о себе</h1>
        Имя: <Input id="name" type="text" value="ivan"><br>
        Фамилия: <Input id="sname" type="text" value="ivanov"><br>
        Год рождения: <Input id="birth" type="text" value="1975"><br>
        <input type="button" value="ОК" onClick="commit()">
    </body>
</html>
...
Рейтинг: 0 / 0
document.open по типу диалогового окна и возврат данных (JS)
    #38857058
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Imperous,
Канечна работать не будет.. Небось через файл запускаш
.. Security не позволяет... на хосте будет все нормально.. Чаще используй консоль.
...
Рейтинг: 0 / 0
document.open по типу диалогового окна и возврат данных (JS)
    #38857090
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kunaksergey,
все так :)
правда куда в консоле смотреть не понял...
...
Рейтинг: 0 / 0
document.open по типу диалогового окна и возврат данных (JS)
    #38857095
kunaksergey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Imperous,

F12 ... в любом браузере в консоли можно смотреть ошибки
...
Рейтинг: 0 / 0
document.open по типу диалогового окна и возврат данных (JS)
    #38861273
Imperous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kunaksergey,
консолью-то умею пользоваться...

с opener в итоге все получилось очень даже не плохо, но сам для себя забраковал сей путь и все таки сделал через z-index, так оно как-то поприятней воспринимается :)
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / document.open по типу диалогового окна и возврат данных (JS)
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]