Реклама
timeweb
falbar

Запрещаем ввод любых символов кроме чисел при помощи jQuery

16 сентября 2014 3151 0

Сегодня я расскажу о полезном сниппете, используя который, можно организовать запрет ввода символов в поля формы. Подобный функционал очень важен для защиты от хакерского взлома, ведь мало кто обрадуется, зайдя в одно прекрасное утро на свой сайт и увидев табличку «hacked by Вася Пупкин». Помните, проверять поля форм на наличие «вредоносных» символов очень важно!

Реклама

Запрет ввода символов мы реализуем при помощи библиотеки jQuery. В этом случае проверка у нас будет происходить еще до отправки данных на сервер.

После того, как вы подключите библиотеку, можно смело применять функцию:

function onlyNumbers(el){

	el.on("change keyup input click", function(){
		if(this.value.match(/[^0-9]/g)){
			this.value = this.value.replace(/[^0-9]/g, "");
		};
	});

	return false;
};

Как вы могли заметить, мы пользовались jQuery методом on(), передав ему четыре значения параметра событий: change, keyup, input, click. Это позволяет отследить все изменения в поле ввода, а, впоследствии, через регулярное выражение, отсечь ненужные символы. В примере мы оставляем только числа, что идеально подойдет для поля с вводом номера телефона. Для других полей можно использовать аналогичную функцию, заменив в ней регулярное выражение на нужное.

Реклама
Комментариев еще не оставлено
no_avatar