Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   модальное окно в европу =) (https://javascript.ru/forum/misc/15169-modalnoe-okno-v-evropu-%3D.html)

ARBYZ 15.02.2011 17:05

модальное окно в европу =)
 
Здрасти=) вот уже голова гудит, второй день не могу найти ответа, весь инет зашеркал :-?

Вообщем помогите пожалуста. И так есть два php файла в одном форма обратной связи ну там инпуты текстареи кнопка эта форма подключается к обрабочику пусть будет обр.пхп и в обрабочике когда сообщение отправлено успешно должно выводиться модальное окно т.е.:

{
echo "<script type='text/javascript'>
alert ('ваше сообщение отправлено!');
</script>";

}

else 
{
echo "Сообщение не отправлено";
}


Все работает, но проблема в том что когда срабатывает алерт то там всего одна кнопка OK и после нажатия на кноку я попадаю на этот обработчик, а мне не нада туда попадать а нужно чтобы я оставался на странице с формой.

Сообственно вопрос, вожно ли зделать так чтобы допустим по нажатию кнопки ок, я попадал допусти на index.php?! помогите, очень нужно!!

Prizrak177 15.02.2011 17:13

Если я правильно понял, то:

window.location="/index.php" (после alert)

SkyLight 15.02.2011 17:16

Использовать для сообщений такого типа жабаскриптовый alert - не лучшая идея. Красивше будет просто вывести страницу с этим сообщением, и делать автоматический редирект секунд через 5 (о чем также сообщить пользователю). Зачем заставлять людей делать лишний клик?

ARBYZ 15.02.2011 17:18

Все, окно в европу закрыто, огромное спасибо Prizrak177

ARBYZ 15.02.2011 17:21

Цитата:

Сообщение от SkyLight (Сообщение 92634)
Использовать для сообщений такого типа жабаскриптовый alert - не лучшая идея. Красивше будет просто вывести страницу с этим сообщением, и делать автоматический редирект секунд через 5 (о чем также сообщить пользователю). Зачем заставлять людей делать лишний клик?

Т.е. вы имеите ввиду что когда сообщение отправлено, выводиться строка, допустим там красиво оформленная в css, и через допустим 5 сек она автоматически исчезает. так? была такая задумка но вот что-то не получилось у меня, может подсажите как это зделать?

Prizrak177 15.02.2011 17:33

В хидерах (либо просто в начале странице, до тега <? )
<style>
.mess {
//сюда вписываем стиль отображаемого сообщения
}
</style>

Вместо :
echo "<script type='text/javascript'>
	alert ('ваше сообщение отправлено!');
	</script>";



echo '<p class="mess">Ваше вообщение отправлено</p>';
echo '<script type='text/javascript'>
setTimeout('window.location="/index.php"',5000); //5000 - это 5 секунд
</script>';

ARBYZ 15.02.2011 17:50

Цитата:

Сообщение от Prizrak177 (Сообщение 92640)
В хидерах (либо просто в начале странице, до тега <? )
<style>
.mess {
//сюда вписываем стиль отображаемого сообщения
}
</style>

Вместо :
echo "<script type='text/javascript'>
	alert ('ваше сообщение отправлено!');
	</script>";



echo '<p class="mess">Ваше вообщение отправлено</p>';
echo '<script type='text/javascript'>
setTimeout('window.location="/index.php"',5000); //5000 - это 5 секунд
</script>';

ни хочет работать, может я что ни правильно делаю, вообщем стили пока подаждут

у меня так получилось

{
echo '<p>Ваше вообщение отправлено</p>';
echo "<script type='text/javascript'>
setTimeout('window.location="/index.php"',5000);
</script>";
}
else 
{
echo "Сообщение не отправлено";
}


Правильно? или.... :-?

хотя там и тег <p> ничего не значет, нужно было вот так зделать наверное <<<HERE и закрыть потом HERE;

ARBYZ 15.02.2011 17:55

ХМ, разобрался просто там надо было экранировать кавычки

ваш код

setTimeout('window.location="/index.php"',5000);


а нужно так

setTimeout('window.location=\"/index.php\"',5000);


Спасибо!!!!

Prizrak177 15.02.2011 18:00

Хорошим тоном еще бы сделать следующее:

echo "<p>Сообщение не отправлено | <a href="ссылка на страницу с формой отправки">Отправить еще раз</a></p>";

ARBYZ 15.02.2011 18:06

Цитата:

Сообщение от Prizrak177 (Сообщение 92646)
Хорошим тоном еще бы сделать следующее:

echo "<p>Сообщение не отправлено | <a href="ссылка на страницу с формой отправки">Отправить еще раз</a></p>";


я так и хотел зделать =) ну такой способ частенько встречал, или типо если не хотите ждать для возврата нажмити на ссылку.


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