Есть ли способ остановить Mobile Safari, вставляя запятые в числовые поля в формах HTML? - PullRequest
7 голосов
/ 19 октября 2011

У меня есть сайт, который содержит форму, позволяющую пользователям вводить данные кредитной карты.Поля для номера карты, номера выпуска, номера CVC и суммы, которую они хотят внести, используют поле ввода в форме HTML с типом «число».

Обновленное Mobile Safari, которое поставляется с iOS 5 автоматическивставляет запятые в числа в полях ввода «число».Это не только выглядит глупо в номере CC, но и нарушает мою проверку.Есть ли способ остановить это?

Единственная цель использования «числа» вместо «текста» - заставить iOS и Android использовать мягкую клавиатуру, состоящую только из цифр, а не полную клавиатуру.

Я пытался использовать ввод типа «текст» с шаблоном, установленным в «[0-9] *».Это поднимает цифровую клавиатуру на iOS, но не на Android.Он также не позволяет вводить число с десятичной точкой.

Буду очень признателен за любые предложения:)

Спасибо

Ответы [ 3 ]

9 голосов
/ 20 октября 2011

Я изменил свой номер с "числа" на "тел", и я больше не видел, чтобы проблема возникла.

5 голосов
/ 08 декабря 2011

Вы близки - все, что вам нужно сделать, это установить шаблон на «[0-9] *» и сохранить тип как «число».

1 голос
/ 20 октября 2011

У меня такая же проблема. Я думаю, что это связано с форматом региона в ваших настройках. Вы можете установить тип «текст»:

type = text pattern = "[0-9] {1,4} (\. [0-9] {2})?"

для значения от 0 до 9999,99. Однако это решение не запускает цифровую клавиатуру на iOS 5. Или оставьте региональные настройки перезаписать (точка / запятая) и установите:

type = number step = "0.01" max = "9999.99"

для десятичных значений от 0 до 9999,99. Также неспособность проверить или пустые поля с атрибутом «требуется» не препятствуют отправке формы в Safari 5.1 (OS X и iOS).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...