par
dunbar » 19 sept. 2006, 21:06
Bonjour,
Le langage à utiliser est le javascript vu que ça doit se passer côté client (=sans recharger la page)
Voici le principe :
Sur l'évènement onchange() de ton input, mettre une fonction qui calcule le nombre de caractères qui sont dedans (ça se fait très bien avec this.value.length)
Si le résultat est >=2 alors il faut que tu donnes le focus au champ suivant, ce qui se fait avec la méthode focus()
Salut,
Merci pour cette réponse voici ma solution
Code : Tout sélectionner
function checkFilling(field, next) {
if (next) {
if (field.value.length==field.maxLength) {
field.form.elements[next].focus();
}
}
}
Et le FORM
<input type="text" name="mac[1]" size="2" maxlength="2" style="text-transform: uppercase" id="mac1" tabindex="1" onKeyUp="checkFilling (this,'mac2')">:<input type="text" name="mac[2]" size="2" maxlength="2" style="text-transform: uppercase" id="mac2" tabindex="2" onKeyUp="checkFilling (this,'mac3')">:<input type="text" name="mac[3]" size="2" maxlength="2" style="text-transform: uppercase" id="mac3" tabindex="3" onKeyUp="checkFilling (this,'mac4')">:<input type="text" name="mac[4]" size="2" maxlength="2" style="text-transform: uppercase" id="mac4" tabindex="4" onKeyUp="checkFilling (this,'mac5')">:<input type="text" name="mac[5]" size="2" maxlength="2" style="text-transform: uppercase" id="mac5" tabindex="5" onKeyUp="checkFilling (this,'mac6')">:<input type="text" name="mac[6]" size="2" maxlength="2" style="text-transform: uppercase" id="mac6" tabindex="6"></td>
Merci
[quote="@rthur"]Bonjour,
Le langage à utiliser est le javascript vu que ça doit se passer côté client (=sans recharger la page)
Voici le principe :
Sur l'évènement onchange() de ton input, mettre une fonction qui calcule le nombre de caractères qui sont dedans (ça se fait très bien avec this.value.length)
Si le résultat est >=2 alors il faut que tu donnes le focus au champ suivant, ce qui se fait avec la méthode focus()[/quote]
Salut,
Merci pour cette réponse voici ma solution
[code]function checkFilling(field, next) {
if (next) {
if (field.value.length==field.maxLength) {
field.form.elements[next].focus();
}
}
}[/code]
Et le FORM
[quote]<input type="text" name="mac[1]" size="2" maxlength="2" style="text-transform: uppercase" id="mac1" tabindex="1" onKeyUp="checkFilling (this,'mac2')">:<input type="text" name="mac[2]" size="2" maxlength="2" style="text-transform: uppercase" id="mac2" tabindex="2" onKeyUp="checkFilling (this,'mac3')">:<input type="text" name="mac[3]" size="2" maxlength="2" style="text-transform: uppercase" id="mac3" tabindex="3" onKeyUp="checkFilling (this,'mac4')">:<input type="text" name="mac[4]" size="2" maxlength="2" style="text-transform: uppercase" id="mac4" tabindex="4" onKeyUp="checkFilling (this,'mac5')">:<input type="text" name="mac[5]" size="2" maxlength="2" style="text-transform: uppercase" id="mac5" tabindex="5" onKeyUp="checkFilling (this,'mac6')">:<input type="text" name="mac[6]" size="2" maxlength="2" style="text-transform: uppercase" id="mac6" tabindex="6"></td>[/quote]
Merci