Регулярка для номера телефона

185
07 ноября 2018, 07:50

Всем привет Помогите написать регулярку для номера телефона С такой вот маской

{"mask": "(999) 999-9999"}

Пытался написать, но что то явно не так(

var re = /^\d[\d\(\)\ -]{4,14}\d$/;
var re = /^(\s*)?(\+)?([- _():=+]?\d[- _():=+]?){10,14}(\s*)?$/;

Пример того, как устроен обработчик

$(".giftSubmit").click(
        function(e){
            e.preventDefault();
            var parent = $(this).parent();
            var input = parent.find('input');
            var re = /^\(\d{3}\)\s\d{3}-\d{4}$/;
            var valid = re.test(input);
            console.log(valid);
            if (valid) {
                sendAjaxForm('formModal', 'giftForm', 'php/request.php',$(this).attr('name'));
                return false;
            }  else {
                const _telError = parent.find('.terError');
                _telError.addClass('active');
                setTimeout( () => {
                    _telError.removeClass('active')
                }, 4000)
            }
        }
    );
});

Пример на кодпен https://codepen.io/SkipTyler/pen/YjmNYe

Answer 1

Верное решение:

var re = /^[\d()\ \-]{4,14}\d$/; 
var valid = re.test(input.val());
READ ALSO
Konvajs. Как получить объект при нажатии?

Konvajs. Как получить объект при нажатии?

Работаю с konva У меня есть массив квадратов такого типа

203
Выдернуть значение тега выше на одно дом дерево элемента. JS/JQuery

Выдернуть значение тега выше на одно дом дерево элемента. JS/JQuery

При нажатие на картинку выполняется этот код modalImgsrc = this

171
Стоит ли детально изучать массивы и переменные детально? [закрыт]

Стоит ли детально изучать массивы и переменные детально? [закрыт]

Всем привет, есть такой вопрос, стоит ли изучать массивы и переменные детально? Видел их использование в видеоуроках Javascript, переменные все...

165