[param undef][evenement clavier][2param fonction]
Bonjour a tous, j'ai un p'tit stress :(
J'essaie d'envoyer la touche pressée et une valeur a une fonction javascript mais ma deuxieme variable est toujours undefined!
Je ne comprends pas pourquoi, ca devrait fonctionner pourtant...
Le code 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
|
function aelist(evt,n) {
alert(evt);
//addEventListener
document.onkeyup=completesearch(evt,n);
return true;
}
function relist() {
//removeEventListener
document.onkeyup=null;
return true;
}
function completesearch(evt,n) {
var dept=document.getElementById("input"+n).value;
if (window.event) {
key=window.event.keyCode
}
else {
key=evt.which;
}
if(key != 27){ |
le code HTML :
J'ai essayé ca :
Code:
<input type="text" name="input1" id="input1" autocomplete="off" style="width:300px;" value="" onfocus="javascript:aelist('1');" onblur="javascript:relist('1');">
et ca :
Code:
<input type="text" name="input1" id="input1" autocomplete="off" style="width:300px;" value="" onfocus="javascript:aelist(window.event,'1');" onblur="javascript:relist(window.event,'1');">
Si je fais comme dans le premier code, evt contient 1 et dans le 2eme, evt contient l'evenement clavier mais n est undefined :calim2:
Re: [param undef][evenement clavier][2param fonction]
Code:
onfocus="function(e){aelist(e,'1')}"
Essaye quelque chose comme ça.
Attention, dans IE, l'accès à l'evenement est différent (window.event).
Re: [param undef][evenement clavier][2param fonction]
Citation:
Envoyé par tyrann
function aelist(evt,n) {
//addEventListener
document.onkeyup=completesearch(evt,n);
return true;
}
J'avais mal lu ce que tu cherchais à faire. En fait, c'est cette déclaration qui ne convient pas.
Je mettrais:
Code:
1 2 3 4 5
|
function aelist(id) {
document.onkeyup=function(evt){completesearch(evt,id)};
return true;
} |
et dans ce cas, je ne vois pas pourquoi tu as besoin de l'evenement dans le onfocus.
Pourquoi pas simplement:
Code:
1 2
|
onfocus="aelist(this.id)" |
Il ne te reste plus qu'à faire dans completesearch():
Code:
1 2 3 4
|
function completesearch(evt,id) {
var dept=document.getElementById(id).value;
... |
Non? Ou n'ai je rien compris à ce que tu cherches à faire?