Comment faire pour limiter le nombre de caractères qui peuvent être entrés en HTML5 numéro de champ de saisie sur iPhone
Il semble que ni la de la "maxlength", "min" ou "max" attributs HTML avoir l'effet désiré sur l'iPhone pour le balisage suivant:
<input type="number" maxlength="2" min="0" max="99"/>
Au lieu de limiter le nombre de chiffres ou la valeur du nombre entré, le nombre est juste à gauche comme il a été tapé dans l'iPhone 4. Cette balise fonctionne sur la plupart des autres téléphones que nous avons testé.
Ce qui donne?
Aucune solution de contournement?
Si il est important de la solution, nous utilisons jQuery mobile.
Merci!
Vous devez vous connecter pour publier un commentaire.
Exemple
JS
HTML
Si vous utilisez jQuery, vous pouvez ranger le JavaScript un peu:
JS
HTML
substring()
au lieu desubstr()
, developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/....Selon MDN,
maxlength
n'est pas utilisé pournumber
s. Avez-vous essayé tout à l':OU
Vérifier cela, il fonctionne pour moi;
Est-il un minlength validation de l'attribut HTML5?
vous pouvez utiliser ce code:
et code js:
comme Andrew dit, vous avez besoin de changer le type de gamme, à côté de qui vous allez avoir des problèmes avec IE et FF, et probablement le vieux ipad navigateur parce que c'est de l'HTML 5, et c'est un "Genre Nouveau". Jetez un oeil à cette personne qui a essayé la gamme avec JS,
Préciser une plage de numéros d'entrée dans le champ du numéro à l'aide de javascript
Vous pouvez utiliser JavaScript pour vérifier le nombre de caractères dans la boîte et si ils sont trop nombreux, supprimer un:
http://www.webcodingtech.com/javascript/limit-input-text.php
Ici un plus optimisé la version jQuery qui met en cache les sélecteurs.
Il utilise également l'attribut maxlength qui n'est pas pris en charge par le type d'entrée nombre.
Une autre option avec jQuery, mais onkeypress cas... 😉
Je sais que cette question est d'un an mais je ne préfère pas la réponse choisie. Parce que la façon dont il fonctionne, c'est qu'il montre le caractère tapé, puis le supprime.
En revanche, je vais proposer une autre manière qui est similaire à la Volonté, c'est juste mieux dans la façon qu'elle empêche le personnage d'être montré. Aussi j'ai ajouté un
else if
bloc de vérifier si le caractère est un nombre et puis c'est une bonne fonction pour valider le nombre de champs.HTML
JS
C'est Tripex réponse optimisée pour permettre de supprimer des clés, des travaux lors de la saisie et de la sur la pâte.