Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> JS как прекратить работу функции при FALSE, JS как прекратить работу функции при FAL 
:(
    Опции темы
Cheizer
  Дата 12.9.2016, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 28.1.2011

Репутация: нет
Всего: нет



Друзья помогите разобраться, всю голову изломал, есть функция аяксом отправляет форму, с валидацией полей по умолчанию.

Есть задача валидации поля емайл только если в него начали писать, я дописал свою валидацю, вот она:

Код

     emailval: function () {
    $('.client_email').blur(function() {
        if($(this).val() != '') {
            var pattern = /^([a-z0-9_\.-])+@[a-z0-9-]+\.([a-z]{2,4}\.)?[a-z]{2,4}$/i;
            if(pattern.test($(this).val())){
                $(this).css({'border' : '1px solid #569b44'});
                 return true;
            } else {
                $(this).css({'border' : '1px solid #ff0000'});
                return false;
            }
        }
    })
    },


А вот функция отправки формы, она отправляет если в поле емайл вообще не ввели ничего но ввели остальные поля, и не должна отправлять если все заполнили поля НО начали писать емейл но не правильно, без собаки и тд. Так вот, как дописать проверку к функции submitFu если функция emailval вернула true????
Никак не получается.

Код

 submitFu: function () {
                        _.validateFu(_.labels)
            _.emailval()
                        if (!_.form.has('.' + _.invalidCl).length)            
                            $.ajax({
                                type: "POST",
                                url: _.mailHandlerURL,
                                data: {
                                    name: _.getValFromLabel($('.name', _.form)),
                                    email:$('input.client_email',_.arctform).val()||'nope',
                                    phone: _.getValFromLabel($('.phone', _.form)),
             
                    owner_email:$('input.owner_email',_.form).val()||'nope',
                                    stripHTML: _.stripHTML
                                },
                                success: function () {
                                    _.showFu()
                                }
                            })
                            
                    },

PM MAIL   Вверх
igorold
Дата 13.9.2016, 08:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 557
Регистрация: 22.12.2005
Где: Россия->Урал-& gt;Миасс

Репутация: нет
Всего: 17



Отслеживай правильность ввода e-mail через переменную.

var flEmail = 0;

а вместо return true , пиши flEmail = 1;

а потом добавь проверку этой переменной на 1.


--------------------
... у семи нянек 14 сисек ...  
Putin here, Putin there, Putin almost everywhere!
PM MAIL   Вверх
_zorn_
Дата 16.9.2016, 18:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1077
Регистрация: 21.8.2007

Репутация: 1
Всего: 12



Всегда задавался вопросом, зачем "отслеживать" правильность емайла, если все равно через подтверждение ?
Ты должен ПОМАГАТЬ пользователю, а не ЗАПРЕЩАТЬ.
Вот и помогай правильно (подсказки и т.п.)
А для подсказок не нужен зубодробительный регекасп. Достаточно проверить есть ли собака в строке...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0841 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.