X-core
@X-core
начинающий веб разработчик

Как разрешить ввод только для определенных символов?

Разрешить ввод только символов [8, 9, 13, 16, 17, 32, 37, 39, 46, 65-122, 189] При вводе недопустимого символа вывести alert('Недопустимый символ') и удалить этот символ.
Нашел на просторах интернета такой вод код,но при запуске он не работает из-за чего не работает и дополнительный код для данной формы отправки.Разобраться в нем не смог.Может кто нибудь здесь подскажет.
Буду благодарен.
$(function(){
var mas = [0, 8, 9, 13, 16, 17, 32, 37, 39, 46, 56, 189];
$("#form.req_field").on("input", function(e) {
var str = $(this).val();
str = str.split("");
var test = str.filter(function(el) {
var kod = el.charCodeAt(0);
var ok = find_in_array(kod);
!ok && $("p").text("введен недопустимый символ! : " + el);
return ok;
});
$(this).val(test.join(""));
});
function find_in_array(needle) {
if (needle >= 65 && needle <= 122) return true;
for (var i = 0, l = mas.length; i < l; i++)
if (mas[i] == needle) return true;
return false;
}
});
  • Вопрос задан
  • 1312 просмотров
Пригласить эксперта
Ответы на вопрос 1
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Проверка регуляркой:
/([\x00\x08\x09, 13, 16, 17, 32, 37, 39, 46, 56, 189]+)/i

заменить как и первые три символа до конца.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы