/ Appel / jQuery pour iMask après le retour de l'affichage par ajax - jquery, ajax

Appel jQuery pour iMask après le retour de l'affichage par ajax - jquery, ajax

Actuellement, j’utilise le script iMask pour aidereffectuer un masquage et un contrôle de cohérence sur mon entrée pour le taux d'intérêt. Cela fonctionne très bien lorsque toutes les entrées sont chargées en même temps sur la page. Cependant, lorsque j'utilise un appel ajax pour ajouter dynamiquement de nouvelles entrées, celles-ci ne sont pas surveillées par le script iMask.

Mon chargé cette entrée:

<input type="text" id="interestRate" size="25" class="numeric" name="interestRate" value=""/>

et chargé l'iMask en utilisant le code ci-dessous en bas:

<script type="text/javascript">
jQuery(".numeric").iMask({
type: "number"
,sanity : function( val ){
if(val.length > 5){
return val.substr(0,5);
}else{
return val;
}
}
});

Cela fonctionne bien. Mais si j'utilise ajax pour ajouter une nouvelle ligne de données, avec une entrée supplémentaire pour interestRate, ces nouvelles entrées ne seront pas masquées par l'iMask.

Je me demande si je peux quand même faire en sorte que le HTML renvoyé par Ajax soit "assigné" à la fonction iMask.

Merci

Réponses:

0 pour la réponse № 1

Je crois que vous devez appeler la fonction iMask sur tous les nouveaux éléments que vous insérez avec Ajax. Veillez à ne pas l'appeler pour les éléments que vous avez déjà iMasked, ne sachant pas si iMask peut le gérer correctement.

Voici comment je le ferais:

var alreadyIMasked = $(".numeric"); // save already iMasked elements before an ajax call
$.ajax({
url: "...",
success: function( data ) {
$(".some_list").append(data); // append your new elements to the list
$(".numeric").not(alreadyIMasked).iMask({.....});
}
});