Я использую JQuery Tools Validator который реализует проверки HTML5 через jQuery. Пока все отлично работает, кроме одной вещи. В спецификации HTML5 тип ввода «число» может иметь как целые числа, так и числа с плавающей точкой. Это кажется невероятно недальновидным, поскольку это будет полезным средством проверки, только если поля вашей базы данных имеют числа с плавающей запятой со знаком (для неподписанных целочисленных значений вам придется вернуться к проверке «шаблона» и, таким образом, потерять дополнительные функции, такие как «вверх» и «вниз»). стрелки для браузеров, которые его поддерживают). Есть ли другой тип ввода или, возможно, атрибут, который будет ограничивать ввод только целыми числами без знака? Я не смог найти ни одного, спасибо.
РЕДАКТИРОВАТЬ
Хорошо, ребята, я ценю ваше время и помощь, но я вижу много незаслуженного голосования: D. Установка шага в 1 не является ответом, поскольку он не ограничивает ввод. Вы все еще можете ввести отрицательное число с плавающей точкой в текстовое поле. Кроме того, я знаю о проверке шаблонов (я упоминал об этом в моем первоначальном сообщении), но это не было частью вопроса. Я хотел знать, позволяет ли HTML5 ограничивать ввод типа «число» положительными целочисленными значениями. Похоже, что на этот вопрос ответ будет «нет, это не так». Я не хотел использовать валидацию шаблонов, потому что это вызывает некоторые недостатки при использовании валидации jQuery Tools, но теперь кажется, что спецификация не допускает более чистого способа сделать это.
number
вход (по крайней мере, в FF / Chrome / Safari) теперь принимает по умолчанию только целые числа, если только вы не установили явное значение дляstep
attr, которое допускает десятичные значения; например:step="0.01"
. Документированный MDN здесь . У меня две мысли об этом, потому что я думаю, что это разумное значение по умолчанию, но также и серьезное изменение (да, это повлияло на некоторый код, который я написал).