Как я могу предотвратить Chrome отформатировать номер формата HTML5
Мне нужно создать форму для мобильного сайта, в которой люди могут вводить число с десятичной отметкой, например, 5.3.
Чтобы посетителям было проще вводить цифры, я хочу заставить смартфон отображать экранную клавиатуру с символами, которые пользователь, скорее всего, введет.
Можно отобразить цифры на экранной клавиатуре, добавив HTML5 type="number"
тип ввода.
К сожалению, Google Chrome затем начинает проверять ввод и позволяет вводить только промежуточные значения. Таким образом, у пользователя есть цифры на экранной клавиатуре, но он не может ввести номер, который ему нужно ввести.
Как я могу отображать цифры на экранной клавиатуре и разрешать пользователям, которые просматривают веб-сайт с помощью Google Chrome, вводить цифры с десятичными знаками?
1 ответ
Создайте поле следующим образом:
<input type="number" step="0.1" />
Это позволит Chrome правильно проверять и не мешать. По умолчанию, если вы не указали значение шага, оно равно 1, но оно может быть любым положительным плавающим значением.
Протестировано в Chrome 10,12 с типами документов HTML5 и XHTML (оба работают). Пример HTML:
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
</head>
<body>
<form>
<input type="number" step="0.1" />
</form>
</body>
<!-- doctypes
html5: <!DOCTYPE html>
html4: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
xtml: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-->
</html>