Comment faire pour que la fonction jQuery MaskedInput unmask () fonctionne correctement?
Je suis en train d'avoir une entrée sur ma page que je voudrais avoir un numéro de téléphone AMÉRICAIN masque par défaut. Si un utilisateur final clique sur une case à cocher en spécifiant qu'ils aimeraient entrer un numéro de téléphone International, je veux le masque à être supprimé.
J'ai essayé de plusieurs façons et ont été vains jusqu'à présent. Dans le projet actuel, je suis en utilisant jQuery pour afficher/masquer un de complètement différent d'entrée. Mais je n'aime pas cette option et souhaitez une approche plus rationnelle.
Je suis en utilisant le suivant:
jQuery 1.4.1 (allez mettre à niveau vers 1.4.2 bientôt) et jQuery.MaskedInput-1.2.2
<script type="text/javascript">
$(document).ready(function($) {
if ($("#InternationalOfficePhone").attr('checked') == false) {
$("#OfficePhone").mask("(999) 999-9999? x99999");
}
});
$("#InternationalOfficePhone").click(function() {
if ($("#InternationalOfficePhone").attr('checked') == true) {
//$("#OfficePhone").mask(); //doesn't work
//$("#OfficePhone").unmask(); //doesn't work
$("#OfficePhone").unmask("(999) 999-9999? x99999"); //doesn't work
} else {
$("#OfficePhone").mask("(999) 999-9999? x99999");
}
});
</script>
Le code ci-dessus fonctionne correctement pour définir la valeur par défaut du masque, mais peu importe ce que j'essaie sur l'événement click pour le InternationalOfficePhone il n'a pas d'enlever le masque.
Toute aide est très appréciée.
source d'informationauteur Terry Nederveld
Vous devez vous connecter pour publier un commentaire.
Vous n'avez pas besoin de passer un paramètre à la
unmask
fonction!L'utiliser sans paramètre et il fonctionne bien.
J'ai été capable de comprendre le code pour le faire fonctionner. Ci-dessous c'est le code que j'utilise maintenant.
Essayez d'utiliser le
:checked
au lieu deattr
vérifier, je pense que c'est le problème. Je veux dire utiliser$('#InternationalOfficePhone').is(':checked')
dans la condition if.Je passe par le même problème, et ce qui m'a aidé:
Supprimer la masquesaisie (inputmask):
ou
ou
Je suis en utilisant query.maskedinput.js Version: 1.4.1
J'ai évoqué
https://github.com/digitalBush/jquery.maskedinput/blob/bb66bf9b1c3eddd1d2349cee103127ae08d0a877/demo/index.html
la dénonciation est faite par
$("input").blur(function() {
$("#info").html("Démasqué valeur:" + $(this).masque());
exemple
Le masquage est
$("#pannumber").masque("aaaaa 9999");
Démasquer
$("#pannumber").blur(function() {
var pannumber= $(this).masque() ;