Estoy teniendo un momento difícil con keydown y dejar de propagaciónjQuery gatillo() y stopPropagation() en el evento KeyDown
i no quiero que mi página se actualice, he intentado todas las maneras que se me ocurre, mi el código actual es
<script>
$(document).ready(function() {
var e = jQuery.event('keydown', { which: $.ui.keyCode.ENTER });
$('#id_number').trigger(e, function(event){
event.preventDefault();
event.stopPropagation();
});
});
</script>
¿Alguna idea de qué estoy haciendo mal aquí? Pensé que el evento fue llamado correctamente, tengo jQuery y jQuery UI vinculado correctamente y recibir sin errores consola
ACTUALIZACIÓN bien que estaba trabajando, ahora im conseguir la propiedad 'evento' de la función objetivo (a, b) {return new e.fn.init (a, b, h)} no es un error de la función en el código de abajo
$(document).ready(function() {
var e = jQuery.event('keydown', { which: $.ui.keyCode.ENTER } , function(event){
event.preventDefault();
event.stopPropagation();
});
$('#id_number').trigger(e);
});
Actualización # 2 - fijo
cosas que aprendí
- trigger() no es necesario en el documento (listo)
- recibiendo $ .ui.keyCode al trabajo era difícil (al menos para mí)
- siempre ver qué otras funciones vinculadas a la entrada (onBlur, onfocus, etc.) también conocido como doh
volvió a escribir a esto, funciona perfectamente bien
$(document).ready(function() {
$('#id_number').keydown(OnKeyDown);
});
function OnKeyDown(e){
var code = (e.keyCode ? e.keyCode : e.which); //to support both methods
if(code == 13) { //the Enter keycode
//my actions
return false;
}
}
¿Usted intentó volver 'false'? – TheZ
¿Por qué crees que la función 'event' (* que debes cambiar a' Event' con mayúscula E *) toma un tercer argumento? de acuerdo con los documentos solo toma dos argumentos ... primero es el tipo de evento y el segundo es un objeto con propiedades de evento ... –
porque estaba pensando tonto? Se confundió, siento que su respuesta fue correcta, simplemente no pude hacer que funcione hasta que reescribí el código –