Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Подскажите... (https://javascript.ru/forum/events/18033-podskazhite.html)

simple 14.06.2011 11:31

Подскажите...
 
Всем привет, вобщем делаю форму ввода, и нуждаюсь в ограничения ввода символов в тег input. Нарыл вот такой код: <input type=text onkeypress="if(event.keyCode>57 || event.keyCode<48) return false"> Код, работает, но стоит мне его вынести в отдельную функцию и ее уже вешать на событие onkeyprerS то она перестает работать, мне нужна доп.обработка данных

Маэстро 14.06.2011 11:37

http://javascript.ru/tutorial/events

nikita.mmf 14.06.2011 11:47

var input = document.getElementById("MyInput");
var handler = function ( event ) { 
    event = event || window.event;
    return event.keyCode > 47 && event.keyCode < 58;
}
if ( input.addEventListener ) {
    input.addEventListener("keypress", handler, false);
} else if ( input.attachEvent ) {
    input.attachEvent("onkeypress", handler);
}

simple 14.06.2011 16:42

Никита, спасибо. А вот еще вопрос,как можно отключить события у всех объектов на странице, как при виндовском алерте? Дело втом что у меня есть модальное окно, и пока оно не закрыто нужно чтобы остальные элементы не реагировали на события?

simple 14.06.2011 16:48

И вот еще что, может ли в дальнейшем привести к ошибкам если я переменные делаю как html теги. Например: div=document.createELEMENT('DIV')не возбраняется такое в js? Или лучше писать другие переменные?

melky 14.06.2011 16:55

разницы нет

можешь даже написать

window['русский див'] = document.createElement('div')


будет русский дивчик :)

получается забавно


dmitriymar 14.06.2011 16:55

Цитата:

Сообщение от simple
Или лучше писать другие переменные?

лучше писать.
отключить остальные-ну положи на весь экран под окно контейнер,перекрой им все элементы-и действие будет соотносится с ним.(в контакте подобная реализация -когда клик за фото,видео.... скрывает окно с фото и открывает доступ к элементам страницы)

simple 17.06.2011 00:02

Dmitriymar, спасибо классное решение, а я то мучился с циклами и с идами элементов, оказалось все просто.


Часовой пояс GMT +3, время: 01:19.