IE6 и DOM appendChild на лету..
Mar 12

Возникла потребность в примитивном фильтровщике ввода в текстовое поле, без учета вставки из буффера..
<input type=”text” onkeypress=”valueFilter(event, [0,1,2,3,4,5,6,7,8,9])” />

пример в действии (допустимы только числовые сиволы):

Сорцы внутри.

function valueFilter(e, allowed) {
    var skip = true,
        e = e || window.event,
        key = String.fromCharCode(e.which || e.keyCode);

    for(var i=0; i<allowed.length; i++) {
        if(String(allowed[i]) === key.toLowerCase()) {
            skip = false;
            break;
        }
    }
    if(skip) {
        if(e.preventDefault) e.preventDefault();
        e.returnValue = false;
    }
    return true;
}

No related posts.

3 Responses to “Простой JS фильтр ввода в поле формы по опр. значениям.”

  1. peroni Says:

    и этот кусок будет фильтровать весь написанный контент? sd

  2. admin Says:

    будет фильтровать ввод в текстовое поле, массив допустимых значений передается вторым аргументом [0,1,2,3,4,5,6,7,8,9]

  3. froex Says:

    backspace и delete не работает, надо коды клавиш дописать

Leave a Reply

This is a captcha-picture. It is used to prevent mass-access by robots. (see: www.captcha.net)

You must read and type the 5 chars within 0..9 and A..F, and submit the form.

  

Oh no, I cannot read this. Please, generate a