Запрещаем символы в поле ввода

Недавно нужно было оформить поле ввода для номеров телефонов, при оформлении заказа. Сначала хотели сделать ввод по маске, но потом оказалось, что пользователи настолько глупы, что не могут ввести нормально номер в маску. По умолчанию можно было в...

Автор . Дата: 10.12.2014

Недавно нужно было оформить поле ввода для номеров телефонов, при оформлении заказа. Сначала хотели сделать ввод по маске, но потом оказалось, что пользователи настолько глупы, что не могут ввести нормально номер в маску. По умолчанию можно было вводить код оператора и сам номер, а код страны (+7) уже был, и его нельзя было изменить. Так вот, пользователи после +7 вводили старый код России 8. И из-за этого их номер не влазил в поле полностью. Пришлось немного переделать. Мы сделали ввод в поле без маски, но разрешили только символы +, -, (, ) и цифры. А вот так это выглядит в коде:

$('#phone').bind("change keyup input click", function() {
    if (this.value.match(/[^-|^\)|^\(|^\+|^0-9]/g)) {
        this.value = this.value.replace(/[^-|^\)|^\(|^\+|^0-9]/g, '');
    }
});

Теперь, если вводить не разрешенные символы, то ничего не будет происходить. Как раз то, что нам было нужно. Надеюсь это и вам поможет. Приятного использования :-)


comments powered by HyperComments