Forum Webscript.Ru

Программирование => JavaScript & JScript => Тема начата: mann от 26 Февраля 2004, 17:23:56

Название: проверка данных в поле на корректность
Отправлено: mann от 26 Февраля 2004, 17:23:56
Пытался сделать проверку на ввод данных в поле, т.е. поле числовое и при набитии очередного знака в поле функция chek_dat() должна его проверить если случайно набили букву то выдать сообщение \'Это числовое поле!\' Но что то не работает. Может кто подскажет.



Untitled Document





   

Дата
 


   

Месяц
   


   

Событие
     
   



Название: проверка данных в поле на корректность
Отправлено: ThE0ReTiC от 26 Февраля 2004, 17:54:53
function onlyDigits(the_form,the_element)
{
var elt = document.forms[the_form].elements[the_element];
var elt_cnt = (typeof(elt.value.length) != \'undefined\')
                  ? elt.value.length
                  : 0;

        if (elt_cnt)
        {
        nnil = new String(\'0\');
        ordnil = nnil.charCodeAt(0);

        nnine = new String(\'9\');
        ordnine = nnine.charCodeAt(0);

        ndot = new String(\'.\');
        orddot = ndot.charCodeAt(0);

        for (var i = 0; i < elt_cnt; i++)
        {
        var chr = elt.value.charAt(i);
        var och = elt.value.charCodeAt(i);
        l = new String(elt.value);

        myReg = new RegExp(chr,"gi");

        if ((och < ordnil || och > ordnine) && och != orddot)
        {
        elt.value = l.replace(myReg,\'\');
        }
        }
        }

}
Позволяет вдалбливать только цифры и точку
применяется так


...

Название: проверка данных в поле на корректность
Отправлено: Макс от 26 Февраля 2004, 17:56:56
а где ты такое событие взял onkey ?
Попробуй через события onkeyup, onkeydown, onkeypress.

Хотя ИМХО вполне достаточно проверять форму после того как бзер нажмет submit-кнопку (событие onsubmit)
Название: проверка данных в поле на корректность
Отправлено: mann от 26 Февраля 2004, 18:28:44
Спасибо получилось