Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Обновление страницы
 
 автор: Drago   (14.08.2005 в 00:37)   письмо автору
 
 

Как сделать, чтобы при закрытии одного окна, обновлялось другое?

   
 
 автор: Drago   (15.08.2005 в 00:26)   письмо автору
 
   для: Drago   (14.08.2005 в 00:37)
 

Помогите пожалуйста.
Объясняю суть. Есть страница, к примеру гостевая, на которой расположена ссылка на добовление сообщения. При нажатии на нее, открываеться новое маленькое окно с формой. При нажатии кнопки "добавить", маленькое окно закрываеться через window.close(). Так как можно сделать, чтобы при закрытии маленького окна, обновлялось главное?

   
 
 автор: sancho   (15.08.2005 в 09:14)   письмо автору
 
   для: Drago   (15.08.2005 в 00:26)
 

В функцию которая вызывает окно, вставьте

имя_формы_в_главном_окне.submit();

   
 
 автор: Drago   (15.08.2005 в 22:57)   письмо автору
 
   для: sancho   (15.08.2005 в 09:14)
 

А нельзя ли по подробнее?
Окно отрываеться так:

<a href='#nul' ONCLICK="window.open('dir/forma.php','_blank','Toolbar=0,Location=0,Directories=0,Status=0,Menubar=0,Scrollbars=1,Resizable=0,Width=500,Height=300'); ">Добавить сообщение</a>

А то, куда не вставляю, то все как было, то главное окно обновляеться, а маленькое не открывается.

   
 
 автор: Drago   (18.08.2005 в 23:28)   письмо автору
 
   для: Drago   (15.08.2005 в 22:57)
 

Я в javascript, совершенно не разбираюсь. Кто-нибудь, скажите, что куда добавить, чтобы при закрытии дочернего окна, обновилось родительское?

   
 
 автор: off   (14.12.2005 в 14:23)   письмо автору
 
   для: Drago   (18.08.2005 в 23:28)
 

Сталкнулся с такой же проблемой. Помогите кто-нить плиз.

   
 
 автор: 12345   (14.12.2005 в 14:59)   письмо автору
 
   для: off   (14.12.2005 в 14:23)
 

Окно открывают так:
<a href='#nul' ONCLICK="w1=window.open('dir/forma.php','_blank',' ...... '); ">Откр.окно</a>
Разница в "w1=".
Затем, в окне в док. forma.php:
. <.. =button onclick=parent.closeW1()  > 
Nfr вызвали функцию закрывания окна.
В главном документе:

closeW1=function(){w1.close(); //закрыли
location=location.toString(); //обновили себя. Чтобы браузер всегда обновлял, а не 
//брал из кеша, измените чуть-чуть урл (?magic=1 в конце) или если скрипт, то параметр.
}

   
 
 автор: off   (14.12.2005 в 21:53)   письмо автору
 
   для: 12345   (14.12.2005 в 14:59)
 


Затем, в окне в док. forma.php:
. <.. =button onclick=parent.closeW1()  >  


Попробовал с <body onload=parent.closeW1() > думаю тоже самое.


closeW1=function(){w1.close(); //закрыли 
location=location.toString(); //обновили себя. Чтобы браузер всегда обновлял, а не 
//брал из кеша, измените чуть-чуть урл (?magic=1 в конце) или если скрипт, то параметр. 



Вот это вставил в страницу, на кот. находится ссылка по кот. открываем новое окно.

Не работает. Окно не закрывается. Стр не обновляется. Что я неправильно делаЮ?

   
 
 автор: 12345   (15.12.2005 в 00:17)   письмо автору
 
   для: off   (14.12.2005 в 21:53)
 

Это я ошибся в свойстве - нужно opener.
Но, кроме того, вызывать из 2-го файла функции 1-го удаётся так:
<body onload=opener.eval("closeW1();");>

Итого, 1-й файл:
<script>closeW1=function(){w1.close();
location=location.toString()+'?2';}
</script>
<a href=# onClick="w1=window.open('2ndFile.htm','xx','');return!1">
      открыть новое окно, потом закрыть и обновить страницу с изменённым УРЛ</a><br>

2-й файл:
<body onload=opener.eval("closeW1();");>
Удлинение УРЛ показывает, что перезагрузка происходит, а вообще надо делать другой механизм со счётчиком, чтобы Урл не удлинялся.

Тут (http://www.themix.ru/jsbook07.htm) есть интересная информация о методах reload и replace. Они давние, со 2-х версий, так что должны работать везде. Нас интересует .reload(false)

   
 
 автор: drago   (17.12.2005 в 02:29)   письмо автору
 
   для: off   (14.12.2005 в 14:23)
 

У меня тогда довольно все просто получилось.
Окно открывается ссылкой

<a href='#' ONCLICK="window.open('forma.php', 'forma', 'Toolbar=0,Location=0,Directories=0,Status=0,Menubar=0,Scrollbars=0,Resizable=0,Width=500,Height=300');return false;">&#196;&#238;&#225;&#224;&#226;&#232;&#242;&#252; &#241;&#238;&#238;&#225;&#249;&#229;&#237;&#232;&#229;</a>

А в дочернем окне, написал

<script language='javascript'> window.opener.location.reload(); window.close() </script>

В результате все прекрасно работает.

   
 
 автор: 12345   (17.12.2005 в 13:59)   письмо автору
 
   для: drago   (17.12.2005 в 02:29)
 

Тоже правильно. Но я предпочитаю не закрывать смо себя. В некоторых версиях браузеров были проблемы. Они, скорее всего, устранены в новых версиях.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования