[DOM] insertion d'un caractere en cours de frappe avec DOM
Salut à tous, j'ai un probléme, je dois formatter un numéro en cours de frappe, 'est a dire que le caractere de séparation se met automatiquement,cela doit etre fait en utilisant DOM,
ci quelqu'un avait une bonne idée ce serait sympa, voila deja ce que j'ai
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| <?xml version="1.0" encoding="UTF-8"?>
<div id="message"></div>
<div id="form">
<fieldset><legend>Compte bancaire</legend>
<label for="texte">Numéro de compte</label>: <input type="texte" id="num" maxlength="12" value=""></input>
</fieldset>
<input type="submit" id="save" value="Verifier"/>
</div>
</body>
</html> |
et pour le javascript
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| window.onload=function(){
observe(document.getElementById("save"),"click",valid,true);
observe(document.getElementById("num"),"keypress",verif,true);
observe(document.getElementById("num"),"keyup",ajoute,true);
}
function observe(noeud, evenement, fonction, postPhase){
//Pour le standard DOM2
if (noeud.addEventListener) noeud.addEventListener(evenement, fonction,postPhase);
//Pour IE
else if (noeud.attachEvent) noeud.attachEvent("on"+evenement, fonction);
}
unction ajoute(event) {
var tmp = document.getElementById("num").value;
/* requête de la position d'insertion */
var pos=0;
var sep = "-";
var trueValue;
while(pos !=12) { //insere les separateurs
//if(pos ==2 || pos == 9)
if(tmp[2]) {
tmp += trueValue.charAt(pos++);
tmp += sep;
alert(tmp);
}
else {
tmp += trueValue.charAt(pos++);
alert(tmp);
}
}
documentgetElementById("num").value = tmp;
} |
voila merci de votre aide
aplus