Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Модальное окно без HTML (https://javascript.ru/forum/dom-window/70252-modalnoe-okno-bez-html.html)

Sayler91 22.08.2017 17:57

Модальное окно без HTML
 
Можно ли сделать скрипт.js (например: букмарклет) на базе jquery использование которого, открывает модальное окно с некой формой для заполнения? И можно ли обойтись без CSS? Желательно привести пример кода.

j0hnik 22.08.2017 18:27

Можно, но это будет не окно а не отформатированный HTML.

Sayler91 22.08.2017 19:22

Цитата:

Сообщение от j0hnik (Сообщение 462383)
Можно, но это будет не окно а не отформатированный HTML.

А можно простенький пример или как тема называется.

j0hnik 22.08.2017 22:16

test.html
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<a href="javascript:window.open('test2.html')";>Ссылка</a>
</body>
</html>


test2.html
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<input type="text" placeholder="Введите ваше имя"><br><br>
<input type="password" placeholder="Введите ваш пароль">
</body>
</html>


без css только такие окна отрывать или prompt! больше ничего в голову не приходит

Sayler91 23.08.2017 16:59

Спасибо за пример. Наверное использую такой код. Вот токльо не знаю можно ли там использовать поля для заполнения и создавать кнопки.
var win = window.open("about:blank", null, "width=400,height=300");
var doc = win.document;
doc.open("text/html");
doc.write("text");
doc.close();

j0hnik 23.08.2017 21:15

можно, только вместо about:blank нужна ссылка на реальную страницу а в ней уже и будет форма.

Sayler91 24.08.2017 19:29

Цитата:

Сообщение от j0hnik (Сообщение 462540)
можно, только вместо about:blank нужна ссылка на реальную страницу а в ней уже и будет форма.

Все таки использовал метод без постороннего файла. Добавил поля и кнопку.
var win = window.open("about:blank", null, "width=400,height=300");
var doc = win.document;
doc.open("text/html");
doc.write('<p>Сложение</p>');
doc.write("<input name='pole1' type='text' size='30' placeholder='Поле 1'></br></br>");
doc.write("<input name='pole2' type='text' size='30' placeholder='Поле 2'></br></br>");
doc.write("<input value='Посчитать' onclick=alert('не знаю что вписать') type='button'>");
doc.write('<p>Сумма </p>');
doc.close();

Помогите пожалуйста. Нужно чтоб, когда вводишь цифры в поля 1 и 2 отображалась сумма на последней строчке.

j0hnik 24.08.2017 20:10

var win = window.open("about:blank", null, "width=400,height=300");
var doc = win.document;
doc.open("text/html");
doc.write('<p>Сложение</p>');
doc.write("<input name='pole1' type='text' size='30' placeholder='Поле 1'></br></br>");
doc.write("<input name='pole2' type='text' size='30' placeholder='Поле 2'></br></br>");
doc.write("<input value='Посчитать' onclick='summ();' type='button'>");
doc.write('<p>Сумма </p>');
doc.write("<script>function summ(){document.querySelectorAll('p')[1].textContent = document.querySelectorAll('input')[0].value*1+document.querySelectorAll('input')[1].value*1;};<\/script>");
doc.close();

Sayler91 24.08.2017 20:27

Спасибо, очень помогли.

Sayler91 01.09.2017 12:14

Цитата:

Сообщение от j0hnik (Сообщение 462618)
doc.write("<script>function summ(){document.querySelectorAll('p')[1].textContent = document.querySelectorAll('input')[0].value*1+document.querySelectorAll('input')[1].value*1;};<\/script>");
doc.close();

В хроме работает, но не на всех IE. Ругается на
document.querySelectorAll
Подскажите функцию с использованием jquery.


Часовой пояс GMT +3, время: 13:53.