aide pour settimeout et paramètres
Salut à tous,
je suis en train de faire un petit script qui permet d'effectuer une action lorsque l'utilisateur ne tape plus rien dans un input au bout de 3 secondes (pour éviter de faire des requettes ajax a tout va).
Ce pendant j'ai un petit problème pour le passage des paramètres avec settimeout:
voila mon code concerné:
l'appel de la fonction:
Code:
1 2
|
<input type="text" id="name" name="name" onkeyup="tempo(3000,this.value,\'name\');"/> |
Et les fonctions javascript associé:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
function test(valeurtemp,idinpu)
{
alert(valeurtemp.length);
if(valeurtemp.length==document.getElementById(idinput).value.length)
{
alert('testhjk');
}
}
function tempo(temps,valeurtemp,idinput)
{
setTimeout("test();",3000,valeurtemp,idinput);
} |
La il me renvoie l'erreur comme quoi valeurtemp n'est pas défini dans la fonction test (donc les parametre ne sont pas bien envoyé).
J'ai essayé avec des variables globales, la ca marche les parametre sont bien envoyé, mais le probleme est que je compare la longueur de la chaine taper lorsque la fonction est tapé (valeurtemp.length) et la longueur de la chaine de caractere courante (document.getElementById(idinput).value.length); ).
Je fais ce test pour que l'action ne s'effectue qu'une fois si l'utilisateur n'a rien tapez pendant 3 secondes. Si je le fait pas l'action va s'effectuer 1 fois par nombre de caractères.