Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 16.12.2013, 12:13
Новичок на форуме
Отправить личное сообщение для boot78 Посмотреть профиль Найти все сообщения от boot78
 
Регистрация: 16.12.2013
Сообщений: 6

Sumbit и окно успешной оправки
Проблема вот в чём не получается зацепить к кнопки отправки письма действие что бы лайтбокс окно открывалось после отправки письма на емаил.

вообщем выкладываю сам код
<head>
<script type="text/javascript">
$(function(){

$('#indexForm1').bind('submit', function(){
var form = $(this);

$.ajax({
type: "POST",
url: "./feddbek.php",
data: form.serialize(),
success: function(returnedInfo){

$.fancybox({
'type': 'ajax',
'href': './ok.html',
'width': '360',
'height': '340',
});

}
});

return false;

});

});
</script>


<body>
<form name="Form2" method="post" action="./feddbek.php" enctype="multipart/form-data" accept-charset="UTF-8" id="indexForm1" onsubmit="return ValidateForm2(this)">

<input type="hidden" name="Заказ со скидкой" value="35%">
<input type="text" id="indexEditbox1" name="Имя" value="" placeholder=" Введите имя">
<input type="text" id="indexEditbox2" name="Емаил" value="" placeholder=" Емаил">
<input type="text" id="bigEditbox1" name="Телефон" value="" placeholder=" Телефон">


<input type="submit" class="btn big" id="indexButton2" name="" value="Заказать звонок" style="">
</form>



Подскажите как вызвать это окно после отправки письма.

Последний раз редактировалось boot78, 16.12.2013 в 12:28.
Ответить с цитированием
  #2 (permalink)  
Старый 16.12.2013, 13:24
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,464

Сообщение от boot78 Посмотреть сообщение
Подскажите как вызвать это окно после отправки письма.
Оно вызывается...
Ответить с цитированием
  #3 (permalink)  
Старый 16.12.2013, 13:30
Новичок на форуме
Отправить личное сообщение для boot78 Посмотреть профиль Найти все сообщения от boot78
 
Регистрация: 16.12.2013
Сообщений: 6

Да но когда отправляеш пустую форму оно тоже вызывается. я могу показать пример где на сайте стоит оно и как криво работает
Ответить с цитированием
  #4 (permalink)  
Старый 16.12.2013, 13:32
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,464

boot78, ну так надо правильно формулировать вопрос, про "пустую форму" речи не было... проверяй на пустоту...

Последний раз редактировалось Rise, 16.12.2013 в 13:37.
Ответить с цитированием
  #5 (permalink)  
Старый 16.12.2013, 13:49
Новичок на форуме
Отправить личное сообщение для boot78 Посмотреть профиль Найти все сообщения от boot78
 
Регистрация: 16.12.2013
Сообщений: 6

<script type="text/javascript">
function ValidateForm2(theForm)
{
   var regexp;
   regexp = /^[A-Za-zAAAAAA?CEEEEIIII?NOOOOOOUUUUY??aaaaaa?ceeeeiiii?noooooouuuuy?yЙЦУКЕНГШЩЗХЪЭЖДЛОРПАВЫФЯЧСМИТЬБЮЁёйцукенгшщзхъфывапролджэюбьтимсчя]*$/;
   if (!regexp.test(theForm.indexEditbox1.value))
   {
      alert("Введите имя");
      theForm.indexEditbox1.focus();
      return false;
   }
   if (theForm.indexEditbox1.value == "")
   {
      alert("Введите имя");
      theForm.indexEditbox1.focus();
      return false;
   }
   regexp = /^([0-9a-z]([-.\w]*[0-9a-z])*@(([0-9a-z])+([-\w]*[0-9a-z])*\.)+[a-z]{2,6})$/i;
;
   if (!regexp.test(theForm.indexEditbox2.value))
   {
      alert("Введите емаил");
      theForm.indexEditbox2.focus();
      return false;
   }
   if (theForm.indexEditbox2.value == "")
   {
      alert("Введите емаил");
      theForm.indexEditbox2.focus();
      return false;
   }
    regexp = /^[0-9-123456789+0]*$/;
   if (!regexp.test(theForm.bigEditbox1.value))
   {
      alert("Введите телефон");
      theForm.bigEditbox1.focus();
      return false;
   }
   if (theForm.bigEditbox1.value == "")
   {
      alert("Введите телефон");
      theForm.bigEditbox1.focus();
      return false;
   }
   return true;
}
</script>


Вот проверка на пустоту, но после нажатия на ок вылазиет окно
надо запускать вывод окна только после отправки формы
запускать вывод формы надо после получения ответа от сервера

А как это сделать я ума не преложу
Ответить с цитированием
  #6 (permalink)  
Старый 16.12.2013, 14:41
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,464

Сообщение от boot78 Посмотреть сообщение
regexp = /^[A-Za-zAAAAAA?CEEEEIIII?NOOOOOOUUUUY??aaaaaa?ceeeeiiii?noooooouuuuy?yЙЦУКЕНГШЩЗХЪЭЖДЛОРПАВЫФЯЧСМИТЬБЮЁёйцукенгшщзхъфывапролджэюбьтимсчя]*$/;
Что это за regexp такой? Что он проверяет?
Ответить с цитированием
  #7 (permalink)  
Старый 16.12.2013, 14:42
Новичок на форуме
Отправить личное сообщение для boot78 Посмотреть профиль Найти все сообщения от boot78
 
Регистрация: 16.12.2013
Сообщений: 6

имя
Ответить с цитированием
  #8 (permalink)  
Старый 16.12.2013, 14:48
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,464

Сообщение от boot78 Посмотреть сообщение
имя
А какое правило ввода для имени? По regexp я только понял что у вас клавиши залипают...
Ответить с цитированием
  #9 (permalink)  
Старый 16.12.2013, 16:26
Профессор
Отправить личное сообщение для Rise Посмотреть профиль Найти все сообщения от Rise
 
Регистрация: 07.11.2013
Сообщений: 4,464

boot78,
<form name="order" method="post" action="./feedback.php">
	<input type="hidden" name="discount" value="35%">
	<input type="text" name="name" placeholder="Имя">
	<input type="text" name="email" placeholder="Email">
	<input type="text" name="phone" placeholder="Телефон">
	<input type="submit" value="Заказать звонок">
</form>

<script>
$(function() {
	$('form[name=order]').submit(function() {
		if (validateForm(this)) {
			$.ajax({
				type: this.method,
				url: this.action,
				data: $(this).serialize(),
				success: function() {
					$.fancybox({
						'type': 'ajax',
						'href': './ok.html'
					});
				}
			});
		}
		return false;
	});
});
function validateForm(theForm) {
	var regexp = /^[a-zёа-я]{3,20}$/i;
	if (!regexp.test(theForm.name.value)) {
		alert('Некорректное имя (от 3 до 20 букв)');
		theForm.name.focus();
		return false;
	}
	regexp = /^([\w-]+\.)*[\w-]+@[\w-]+(\.[\w-]+)*\.[a-z]{2,6}$/i;
	if (!regexp.test(theForm.email.value)) {
		alert('Некорректный адрес электронной почты');
		theForm.email.focus();
		return false;
	}
	regexp = /^[0-9]{7,16}$/;
	if (!regexp.test(theForm.phone.value)) {
		alert('Некорректный номер телефона (от 7 до 16 цифр)');
		theForm.phone.focus();
		return false;
	}
	return true;
}
</script>
Ответить с цитированием
  #10 (permalink)  
Старый 16.12.2013, 20:56
Новичок на форуме
Отправить личное сообщение для boot78 Посмотреть профиль Найти все сообщения от boot78
 
Регистрация: 16.12.2013
Сообщений: 6

Щас буду пробывать. А ещё вопрос а если форма ни одна на странице?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как передать переменную в модальное окно sinsir jQuery 24 20.06.2013 16:59
окно поверх таблицы qwertycal Общие вопросы Javascript 2 20.02.2013 12:15
Не закрывается диалоговое окно Jopses jQuery 7 19.02.2013 15:14
Как закрыть дочерние окно из родительского при помощи переключателя checkbox?? dieseln Общие вопросы Javascript 4 15.12.2010 16:30
Как узнать свернуто окно браузера или нет. bar-boss Events/DOM/Window 3 25.09.2008 16:09