Цифровая клавиатура веб-приложения iPhone с десятичной дробью

Я изо всех сил пытаюсь найти ответ на этот вопрос. Я узнал, как сделать так, чтобы клавиатура отображалась в веб-приложении, используя строку шаблона [0-9] *, но это просто показывает цифры без десятичной дроби!

У кого-нибудь есть решение, пожалуйста? :)

Спасибо!


person PapaSmurf    schedule 15.09.2011    source источник
comment
см. stackoverflow.com/questions/773843/   -  person Nikunj Jadav    schedule 15.09.2011
comment
Никундж, вопрос говорит с десятичной дробью   -  person Simmoniz    schedule 21.08.2015


Ответы (3)


Цифровая клавиатура с десятичным вводом была доступна только для родных приложений в iOS 4.1 (в частности, тип клавиатуры UIKeyboardTypeDecimalPad в _ 2_ протокол). Раньше было необходимо обойдите ограничение на отсутствие десятичной точки, используя UIKeyboardTypeNumberPad в качестве отправной точки.

К сожалению, эта функция, похоже, еще не проникла в MobileSafari (или UIWebView), и единственная документация Apple по этой функции - здесь, который, к сожалению, документирует только то, что вы уже обнаружили.

Одна вещь, о которой не упоминается в документации Apple, - это то, что вы можете указать <input type="number"> (новое значение атрибута в HTML5), что запустит пользователя на клавиатуре с цифрами и пунктуацией, к которой обычно получают доступ, нажав кнопку «.? 123» рядом с внизу слева от текстовой клавиатуры по умолчанию.

Я, наверное, сейчас воспользуюсь этим подходом и надеюсь, что поддержка UIKeyboardTypeDecimalPad каким-то образом будет добавлена ​​в iOS 5.

(Между прочим, input элементы с их атрибутом типа, установленным на number, должны поддерживать числа с плавающей запятой согласно спецификации HTML5. Я подозреваю, что именно поэтому Apple представляет в этом случае полную клавиатуру - числа с плавающей запятой могут законно содержать знаки минус и плюс, а также строчные или прописные буквы E, ни один из которых не поддерживается с UIKeyboardTypeDecimalPad)

person Rich Pollock    schedule 15.09.2011

Проблема с <input type="number"> в том, что это будет только кроме целых чисел. Я нашел это, где он упоминает добавление step="any" во входной тег. Теперь у вас есть цифровая клавиатура и вы можете вводить десятичные дроби.

person John Ivanoff    schedule 07.09.2012
comment
Не знал, что вы можете указать любое значение для шага. Спасибо! Автоматическая проверка Chrome сводила меня с ума. - person Staysee; 04.12.2014

Атрибут Checkout inputmode="decimal", начиная с iOS 12.2

https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/inputmode

https://caniuse.com/#feat=input-inputmode

person vguerrero    schedule 24.05.2019