Как я могу предотвратить Chrome отформатировать номер формата HTML5 - PullRequest
2 голосов
/ 27 мая 2011

Мне нужно создать форму для мобильного веб-сайта, в которой люди могут вводить число с десятичной отметкой, например, 5.3.

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

Можно отобразить цифры на экранной клавиатуре, добавив тип ввода HTML5 type="number".

К сожалению, Google Chrome начинает проверять ввод и позволяет вводить только промежуточные значения. Таким образом, у пользователя есть цифры на экранной клавиатуре, но он не может ввести номер, который ему нужно ввести.

Как я могу отображать цифры на экранной клавиатуре и разрешать пользователям, которые просматривают веб-сайт с помощью Google Chrome, вводить цифры с десятичными знаками?

1 Ответ

4 голосов
/ 27 мая 2011

Создайте поле следующим образом:

<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>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...