javascript - presionar - evento al dar enter js
Detectar la tecla Intro en un campo de entrada de texto. (9)
Estoy tratando de hacer una función si se presiona enter mientras se está en una entrada específica.
¿Qué estoy haciendo mal?
$(document).keyup(function (e) {
if ($(".input1").is(":focus") && (e.keyCode == 13)) {
// Do something
}
});
¿Hay una mejor manera de hacer esto que diría, si se presiona enter en .input1
do function?
event.key === "Enter"
Más reciente y mucho más limpio: use event.key
. No más códigos de números arbitrarios!
const node = document.getElementsByClassName(".input")[0];
node.addEventListener("keyup", function(event) {
if (event.key === "Enter") {
// Do work
}
});
Si debes usar jQuery:
$(document).keyup(function(event) {
if ($(".input1").is(":focus") && event.key == "Enter") {
// Do work
}
});
Intenta esto para detectar la tecla Enter
presionada en un cuadro de texto.
$(function(){
$(".input1").keyup(function (e) {
if (e.which == 13) {
// Enter key pressed
}
});
});
Intenta esto para detectar la tecla Enter presionada en un cuadro de texto.
$(document).on("keypress", "input", function(e){
if(e.which == 13){
alert("Enter key pressed");
}
});
La mejor manera que encontré es usando keydown
(el keyup
no funciona bien para mí).
Nota: También deshabilité el envío del formulario porque, por lo general, cuando le gusta realizar algunas acciones al presionar la tecla Enter, lo único que no le gusta es enviar el formulario :)
$(''input'').keydown( function( event ) {
if ( event.which === 13 ) {
// Do something
// Disable sending the related form
event.preventDefault();
return false;
}
});
La solución que me funciona es la siguiente.
$("#element").addEventListener("keyup", function(event) {
if (event.key === "Enter") {
// do something
}
});
Puede ser demasiado tarde para responder a esta pregunta. Pero el siguiente código simplemente evita la tecla enter. Simplemente copiar y pegar debería funcionar.
<script type="text/javascript">
function stopRKey(evt) {
var evt = (evt) ? evt : ((event) ? event : null);
var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
if ((evt.keyCode == 13) && (node.type=="text")) {return false;}
}
document.onkeypress = stopRKey;
</script>
$(document).ready(function () {
$(".input1").keyup(function (e) {
if (e.keyCode == 13) {
// Do something
}
});
});
$(".input1").on(''keyup'', function (e) {
if (e.keyCode == 13) {
// Do something
}
});
//keyup not compatible with Jquery select(), Keydown is.
$(document).keyup(function (e) {
if ($(".input1:focus") && (e.keyCode === 13)) {
alert(''ya!'')
}
});
O simplemente enlazar a la entrada en sí
$(''.input1'').keyup(function (e) {
if (e.keyCode === 13) {
alert(''ya!'')
}
});
Para averiguar qué KeyCode necesita, use el sitio web http://keycode.info