Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Автозакрытие модального окна (https://javascript.ru/forum/jquery/73010-avtozakrytie-modalnogo-okna.html)

maxg5 13.03.2018 20:12

Автозакрытие модального окна
 
Всем доброго времени суток!
На странице http://maxg5.ru/medknizhki/ есть модальное окно с формой обратной связи.
Автозакрытие окна сделал с помощью такого скрипта:
<script>
jQuery(function(){
	jQuery('form.wpcf7-form').submit(function(e){
		e.preventDefault();		
		jQuery.ajax({
			type: 'POST',
			url: '/medknizhki/',
				beforeSend: function(data) {
				jQuery('#submit').before('');			},
			success: function(data) {
				jQuery('.loading').fadeOut(function() {
					jQuery(this).remove();
				}); //прячется gif-ка какая-нибудь				
				setTimeout(function() {
					jQuery('.emodal-overlay').click();//Скрываю модальное окно
				}, 2000); // здесь закрывается модальное окно через 3 секунды
			},
			complete: function(data) {
				$form.each(function() {
					this.reset(); // или так очищается форма методом .reset()
				});
			},
		});
	});
});
</script>


Но как сделать что бы форма не отправлялась если заполнена с ошибками?

laimas 13.03.2018 20:20

Цитата:

Сообщение от maxg5
Но как сделать что бы форма не отправлялась если заполнена с ошибками?

Проверить поля перед отправкой.

maxg5 13.03.2018 20:42

laimas,
Там уже есть проверка как я понял.
Мне нужно использовать ту проверку что есть уже.
Либо как то по другому можно сделать?

laimas 14.03.2018 09:49

Цитата:

Сообщение от maxg5
Там уже есть проверка как я понял.

Исходя из чего?

maxg5 14.03.2018 11:02

Как я понял у тегов input есть атрибут required. Т.е. является ли обязательным заполнение поля или нет.Если поле не заполнено выдается соответствующая ошибка.
Нужно что бы при возникновении этой ошибки окно не закрывалось.

laimas 14.03.2018 11:17

Цитата:

Сообщение от maxg5
Как я понял у тегов input есть атрибут required

Нет таких атрибутов у полей, есть aria-role, среди которых есть и aria-required.

А вот есть добавить атрибут required (даже так достаточно будет), то будет нативная проверка. Правда Safari Win понимая их, игнорирует.


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