Добрый день!

Есть textbox

Выделить код

Код:

<textbox type="number" min="3" max="50" align="center" width="40"/>

Можно ли запретить пользователю вводить текст непосредственно в само поле. т.е стрелками можно вручную в пол нет.
Или как запретить пользователю вводить значения не входящие в рамки (min, max)

Большой
Навесить на текстбокс вот такой вот листенер:

Выделить код

Код:

document.getElementById("my-text-number-box").addEventListener("keypress",function(event)
{
  var key=event.keyCode || event.which;
  if (key<48 || key>57) return; 
  event.stopPropagation();
  event.preventDefault();
},false);

P.S. Не забудьте про буфер обмена (в т.ч. через контекстное меню).
P.P.S. И проверьте, что происходит со значением, если ввести что-то, выходящее за заданные рамки, и перевести фокус.

Спасибо.
я немного сделал по другому.

Выделить код

Код:

<textbox type="number" min="1" max="240" align="center" width="60" preference="pref_news_time_update" height="20" onchange="checkNumberTextBox(this,1,240);"/>

   function  checkNumberTextBox(box, min, max) {
        if(!box || !min || !max) return;
        var value = box.value;
        if(value > max)  value = max;
        else if(value < min)  value = min;
    }