Полезная информация

Список ответов на каверзные вопросы можно получить в FAQ-разделе форума.

№104-01-2007 16:56:10

Olex2
Участник
 
Группа: Members
Зарегистрирован: 04-01-2007
Сообщений: 3

Запрет набора определенных символов (JS)

Подскажите, пожалуйста, как решить следующую проблему.

Выделить код

Код:

<form ...>
 только цифры: <input type="text" name="ClientID" onKeyPress="if(event.keyCode<48 || event.keyCode>57) return false;">
</form>

ВСЕ браузеры, кроме FF, понимают этот код и позволяют вводить в поле только цифры.
FF - не позволяет вводить в это поле вообще ничего...
Что неправильно?

Спасибо.

Отсутствует

 

№204-01-2007 17:15:53

Lynn
Кофеман
 
Группа: Members
Откуда: Россия
Зарегистрирован: 16-02-2005
Сообщений: 1721
Веб-сайт

Re: Запрет набора определенных символов (JS)

Фильтр ввода для текстового поля

Отредактировано Lynn (04-01-2007 17:22:39)


Isn't it ironic... don't you think? — Alanis Morissette

Отсутствует

 

№304-01-2007 17:41:46

Olex2
Участник
 
Группа: Members
Зарегистрирован: 04-01-2007
Сообщений: 3

Re: Запрет набора определенных символов (JS)

Спасибо!

Но осадок остался. :)
Почему в FF не работает то, что работает во всех других броузерах?.. :(

Отсутствует

 

№404-01-2007 18:10:13

Al_H
Away
 
Группа: Members
Откуда: SPb
Зарегистрирован: 10-06-2005
Сообщений: 5508

Re: Запрет набора определенных символов (JS)

Потому что Файрфокс поддерживает JavaScript по стандартам, а в ИЕ JScript - частично по стандартам, частично - какие-то собственные функции. Это обсуждалось не раз и не два. Файрфокс не обязан поддерживать все что напридумывал Майкрософт, не только потому что уже есть браузер, ведущий себя в точности как ИЕ - а именно, ИЕ, который, однако же, не всех устраивает, но и потому, что есть довольно большая эксклюзивная функциональность ИЕ - ActiveX, фильтры, расширенная объектная модель JScript, которые позволяют скриптам получать неограниченный доступ к файловой системе вашего компьютера, а вирусам - скачиваться и запускаться без Вашего ведома. По этим причинам, а также по той причине, что надо когда-то начинать нормально поддерживать стандарты, иначе разработчики никогда не начнут писать страницы по стандартам, Файрфокс поддерживает далеко не все эксклюзивные объекты ИЕ. Например, без innerHTML обойтись было никак нельзя. А вот почему CSS2.1, и даже 2.0, появившийся несколько лет назад, не поддерживается, за исключением только части селекторов (не всех) вышедшим совсем недавно браузером ИЕ7 - это большой вопрос. Данный факт значительно тормозит развитие веб-дизайна и веб-разработки.

Отсутствует

 

№505-01-2007 02:09:13

Unghost
Призрак-админ
 
Группа: Administrators
Откуда: Moscow, Russia
Зарегистрирован: 08-10-2004
Сообщений: 11771

Re: Запрет набора определенных символов (JS)

==> Разработка


Do not meddle in the affairs of Wizards, for they are subtle and quick to anger.

Отсутствует

 

№605-01-2007 13:49:43

Olex2
Участник
 
Группа: Members
Зарегистрирован: 04-01-2007
Сообщений: 3

Re: Запрет набора определенных символов (JS)

Al_H пишет

Потому что Файрфокс поддерживает JavaScript по стандартам, а в ИЕ JScript - частично по стандартам, частично - какие-то собственные функции.

Я согласен. Ну а что в этом коде нестандартного?

Выделить код

Код:

onKeyPress="if(event.keyCode<48 || event.keyCode>57) return false;"

Отсутствует

 

№706-01-2007 07:50:39

Anton
Участник
 
Группа: Extensions
Откуда: от верблюда
Зарегистрирован: 14-12-2004
Сообщений: 3057
Веб-сайт

Re: Запрет набора определенных символов (JS)

кстати, при замене onkeypress на onkeydown, исходный пример будет работать в IE и Firefox, а в Opera (по крайней мере, версий 8.5 и 9.0) - не будет.


Время настанет, время придет...
И лис кОнкурiентов на части порвет !!!

Отсутствует

 

№806-01-2007 15:12:26

Al_H
Away
 
Группа: Members
Откуда: SPb
Зарегистрирован: 10-06-2005
Сообщений: 5508

Re: Запрет набора определенных символов (JS)

Ну а что в этом коде нестандартного?

Добавлено Сбт 06 Янв 2007 15:18:37 :
P.S.: Пожалуйста, ознакомьтесь с объектной моделью event - в части случаев достаточно ее, в части случаев кроме стандартной объектной модели Вам понадобится знать и IEшную для создания совместимых скриптов.

Отсутствует

 

№907-01-2007 02:06:20

Tearis
Участник
 
Группа: Members
Откуда: Воронеж
Зарегистрирован: 18-12-2005
Сообщений: 115

Re: Запрет набора определенных символов (JS)

keyCode это по стандарту:
http://developer.mozilla.org/en/docs/DOM:event.keyCode
http://www.w3.org/TR/1999/WD-DOM-Level-2-19990304/events.html#attribute-keyCode


Кому ничего не надо, с того нечего и потребовать.
©Генри Филдинг

Отсутствует

 

Board footer

Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia GitHub mark
Язык отображения форума: [Русский] [English]