2010-03-03 10 views
14

Si reemplaza "onkeydown" con "clic", al menos reacciona.Javascript: addEventListener con onkeydown no parece funcionar

<input id="yourinput" type="text" /> 

<script type="text/javascript"> 
document.getElementById("yourinput").addEventListener("onkeydown", keyDownTextField, false); 

function keyDownTextField() { 
alert("functional");  
if(keycode==13) { 
     alert("You hit the enter key."); 
    } 
    else{ 
     alert("Oh no you didn't."); 
    } 
} 
</script> 

Respuesta

37

El tipo de evento debe ser "keydown", aviso de que no es necesario el en prefijo:

element.addEventListener("keydown", keyDownTextField, false); 

Tenga en cuenta también que debe obtener el keyCode del objeto de evento en el controlador:

function keyDownTextField (e) { 
    var keyCode = e.keyCode; 
    //... 
} 

Consulte un ejemplo here.

Cuestiones relacionadas