www.Litecode.ru – Сборник рецептов для создания сайтов

Фильтр JavaScript для текстовых полей

ГлавнаяJavaScript → Фильтр JavaScript для текстовых полей

Привет, коллеги!

Выкладываю прототип собственного изобретения для парсинга текстовых полей формы. Понадобится jQuery. Данный пример парсит и налету удаляет недопустимые символы, при этом поле подсвечивается красным (реальный фильтр для урлов, кирилица и спецсимволы запрещены). Такой подход более юзабелен, нежели alert(). Поле определяется по аттрибуту name, но можно и по id. Меня просто убивает каждый раз писать еще и id.


Пример:



Код:

<input type="text" name="latin_string" onkeyup="parseField(this.name)" class="txt"/>
<script>
function parseField(id){
    var obj = '[name="'+id+'"]';
    var str = new String(jQuery(obj).val());
    if(str.match(/[^0-9a-zA-Z-_]+/gi)){

        jQuery(obj).css({'border-color':'#980000','background-color':'#EDCECE'});
        jQuery(obj).val(str.replace(/[^0-9a-zA-Z-_]+/gi,''));

        setTimeout(function(){jQuery(obj).css({'border-color':'#85BFF2','background-color':'#FFFFFF'});},1000)
    }
}
</script>