Попробуйте установить атрибут lang
к en
в <html>
элемента или сам элемент <input>
, чтобы заставить десятичную точку в качестве синтаксиса входного сигнала. Например:
<input type="number" name="myNum" id="myNum" lang="en">
Однако среда пользователя может даже изменить это, и в этом случае единственной альтернативой было бы включать в себя сообщение, требующее десятичную точку, а не запятой.
Это хороший записи из обработки локали для типа ввода номера: https://www.aeyoun.com/posts/html5-input-number-localization.html
ОБНОВЛЕНИЕ:
Другой альтернативой было бы, чтобы остановить форму от проверки ввода с помощью атрибута novalidate
в <form>
элемент, например, так:
<form novalidate>
<input type="number" name="myNum" id="myNum">
<button id="submit">Submit</button>
</form>
Это позволило бы ничего, даже не-числа, так что вам придется создать код JavaScript, чтобы проверить и час и значение.
UPDATE РАЗ:
Просто подумал, что еще одной альтернативной — использовать атрибут pattern
делать регулярные проверки выражений и использовать обычный старый тип text
ввода. Например:
<input type="text" name="myNum" id="myNum" pattern="[0-9.]*">
Преимущество: вы можете точно контролировать, какие пользователи могут вводить.
Недостаток: клавиатура на мобильных устройствах не будет цифровой клавиатурой.
Обратите внимание, что типы ввода HTML могут быть подделаны, поэтому вам все равно необходимо выполнить проверку на стороне сервера.
Какая у вас рекламная страница? –
это страница html5. включая jquery angularjs и bootstrap – DaCh