2015-03-12 28 views
7

Wie zeige ich eine numerische Tastatur mit eine Dezimal-Taste auf iOS und Android? Gibt es einen Ionic-spezifischen Weg, dies zu tun?Ionic/HTML5 - Dezimale Tastatureingabe?

Ich bin in der Lage sowohl eine numerische Tastatur anzuzeigen auf iOS und Android mit dem folgenden:

<input type="number" pattern="[0-9]*"> 

iOS die type der Wert „Nummer“ außer Acht zu lassen erscheint und zeigt das Zahlenfeld die pattern Attribut basiert weg , aber die type ist sowieso auf "Nummer" für Android eingestellt.

Edit: Vergessen zu erwähnen, dass ich versucht habe pattern="[0-9.]*". iOS zeigt einfach die vollständige Tastatur, wenn ich das tue.

Edit2: Ich habe auch versucht pattern="\d+[,.]?\d*" - wieder, ohne Erfolg.

+0

mit Probiere 'pattern =" [0-9.] * "'. –

+2

Auf Android gibt es keine Möglichkeit, eine bestimmte Tastatur zu erzwingen. Sie geben ihm einen Eingabetyp, und die Tastatur (die eine App ist) entscheidet darüber, was am besten angezeigt wird. Wenn es sich entscheidet, kein. Zu zeigen, gibt es keine Möglichkeit, es zu erzwingen. –

+0

@IanMacDonald Ich habe vergessen zu erwähnen, dass ich das vergeblich versuchte. Das war mein erster Versuch, nachdem ich herausgefunden hatte, dass das Muster von [0-9] * für ein normales Nummernfeld funktionierte. – Chad

Antwort

2

Scheint, dass das Problem relativ zu einigen Samsung-Geräten ist.

Ich habe das gleiche Problem, das Sie auf dem Samsung Galaxy Note beschreiben 8.0 (Android 4.4.2), aber alles funktioniert auf Nexus einfach

<input type="number" step="0.01"> 

verwandten Beiträge Google Chrome on Android (and only Android) Does not allow Decimal with type number and step="any"

und Samsung Galaxy Tablet does not allow entering floating point numbers to inputs with "number" type

+0

Dies funktioniert nicht auf iOS. Ich fange an zu denken, dass es (momentan) nicht möglich ist, eine numerische Tastatur mit Dezimalzahl sowohl auf iOS ** als auch auf Android anzuzeigen. – Chad