Открыть новое окно после заполнения формы
Доброго времени суток.
После обработки формы, должно открыться окно с введенным адресом. Т.е. пользователь ввел все данные и в случае если все введено правильно, открывается окно и перенаправляет по другому адресу. Вот мой код, но он не открывает окно : echo'<script type="text/javascript"> var elm=parent.window.document.getElementById("photo"); elm.innerHTML="'.$url.'"; </script>'; $url = "window.open(' http://url.com','Toolbar=1,Location=0,Directories=0,Status=0,Menubar=0','false' );" |
Цитата:
Цитата:
"Открываеть окно и перенаправлять по другому адресу"? |
Главная задача открыть новое окно с необходимым адресом, который находится вне моего сайта.
Вот идея была открыть новое окно при помощи window.open(), только функция не запускается. |
Ну если на текущей странице открывать окно - то без проблем, на новой вкладке-увы - зависит от настройки браузеров
|
Если написать
<script> window.open(' http://url.com','Toolbar=1,Location=0,Directories=0,Status=0,Menubar=0','false' ); </script> на странице, то открывается новое окно с правильной ссылкой. Но запустив php обработчик, этот код передается в div, но не открывается новое окно. Вот и проблема заключается в том, что функция не запускается |
Мне так же подойдет вызов функции javascript, но только как её автоматически вызвать из php?
|
<script> var link ="http://javascript.ru/window-open" //Адрес отображения popupWin = window.open(link,'contacts','location,width=490,height=368,top=0'); popupWin.focus(); </script> |
Deff, спасибо, но проблема в запуске функции, а не написании её. У меня не получается запустить её. После работы php, эта функция выводится в окно пользователя, но не запускается. Вот и проблема в том, как запустить функцию?
|
Цитата:
Делай по аналогии. Вот так это будет работать у меня в CSP <html> <head> <title>test</title> </head> <script language='cache' runat='server'> s url="http://javascript.ru/window-open" w "<script>",! w "var link ='"_url_"' //Адрес отображения",! w "popupWin = window.open(link,'contacts','location,width=490,height=368,top=0');",! w "popupWin.focus();",! </script> </script> <body> </body> </html> В итоге сгенерится такой контент <html> <head> <title>test</title> </head> <script> var link ='http://javascript.ru/window-open' //Адрес отображения popupWin = window.open(link,'contacts','location,width=490,height=368,top=0'); popupWin.focus(); </script> <body> </body> </html> Окно появляется без проблем... |
Цитата:
Видимо не до конца объяснил проблему. Мне нужно было в ссылку добавить переменные из формы. В итоге я решил сделать по-другому, в php сгенерировать div на все окно и onmousemove он запустит функцию открывания окна + возьмет все необходимые данные из формы. |
Цитата:
<html> <head> <title>test</title> </head> <script language='cache' runat='server'> w "<script>",! w "function go(){",! w "var link =document.getElementById('url').value",! w "popupWin = window.open(link,'contacts','location,width=490,height=368,top=0');",! w "popupWin.focus();",! w "};",! w $c(60),"/script>",! </script> <body> <form> <input type='text' id='url' value='http://javascript.ru/window-open' /> <button onclick='go();'>Go</button> </form> </body> </html> В итоге... <html> <head> <title>test</title> </head> <script> function go(){ var link =document.getElementById('url').value popupWin = window.open(link,'contacts','location,width=490,height=368,top=0'); popupWin.focus(); }; </script> <body> <form> <input type='text' id='url' value='http://javascript.ru/window-open'/> <button onclick='go();'>Go</button> </form> </body> </html> |
ksa, большое спасибо за помощь. Я сделал кое что похожее, только функция вызывается по mousemove + в место кнопки прозрачный div на все окно.
|
Цитата:
|
До этого пытался запустить функцию сразу после заполнения, но она запускалась раньше, чем заполнялась форма, по-этому вызывалась без некоторых переменных. В итоге по mousemove для меня лучший вариант. Спасибо за помощь :)
|
Цитата:
|
Заполняя форму, пользователь указывает атрибут - открывать новое окно или нет. Если указывает открывать, то после обработки формы откроется окно
|
Все таки поменять onmousemove на onclick, т.к. браузеры блокируют всплывающие окна.
|
Часовой пояс GMT +3, время: 09:42. |