有时候会遇到和上面类似的表单字段。我们可以给每个字段限制输入长度,当达到输入长度时自动切换焦点,以增强表单的易用性

Maison >interface Web >js tutoriel >Le formulaire change automatiquement de focus lorsque la longueur de saisie est atteinte_compétences javascript

Le formulaire change automatiquement de focus lorsque la longueur de saisie est atteinte_compétences javascript

WBOY
WBOYoriginal
2016-05-16 16:53:13984parcourir
Le formulaire change automatiquement de focus lorsque la longueur de saisie est atteinte_compétences javascript
Parfois, vous rencontrerez des champs de formulaire similaires à ceux ci-dessus. Nous pouvons limiter la longueur de saisie pour chaque champ et changer automatiquement de focus lorsque la longueur de saisie est atteinte pour améliorer la convivialité du formulaire
Copier le code Le code est le suivant :


-
-






Copier le code Le code est le suivant :

(function() {
function tabForward(e) {
e = e ||
var target = e.srcElement; target.maxLength) {
var form = target.form;

for (var i = 0, len = form.elements.length; i < len; i ) {
if (form .elements[i] = == target) {
if (form.elements[i ]) {
form.elements[i ].focus();
break; }
}
}
}

var textbox1 = document.getElementById("txt1");
var textbox2 = document.getElementById("txt2"); textbox3 = document.getElementById( "txt3");

textbox1.addEventListener("keyup", tabForward, false);
textbox2.addEventListener("keyup", tabForward, false); .addEventListener("keyup" , tabForward, false);

})();


Le code est en fait très simple. Il détermine si la longueur de la chaîne d'entrée est égale. à la longueur de l'attribut maxLength de la cible de l'événement. Si tel est le cas, et s'il y a un champ suivant dans le formulaire, il passera automatiquement au focus suivant.

Parlons brièvement des deux attributs suivants :

target.form L'attribut form pointe vers le pointeur vers le formulaire auquel appartient le champ actuel.
.
L'attribut form.elements elements est form Une collection de tous les éléments de formulaire (champs) dans . La collection d'éléments est une liste ordonnée qui contient tous les champs du formulaire, tels que ,