¿Cómo puedo activar algo cuando el cursor está dentro TEXTAREA y Ctrl +Introduzca se presiona? Usando jQuery. GraciasCtrl + Enter jQuery en el área de texto
Respuesta
Usted puede utilizar el indicador event.ctrlKey
para ver si se pulsa la tecla Ctrl , algo como esto:
$('#textareaId').keydown(function (e) {
if (e.ctrlKey && e.keyCode == 13) {
// Ctrl-Enter pressed
}
});
Comprobar el fragmento here anteriormente.
Esto no funciona en Google Chrome. Cuando se presiona Ctrl + Enter, el código de tecla es '10', no' 13'. – Znarkus
Esto no funciona. La solución de Yarolslav Yakovlev a continuación funciona correctamente. Por favor, cambie la respuesta aceptada para ahorrarle tiempo a la gente. –
No funciona en Opera también. –
primero tiene que establecer una bandera cuando se presiona Ctrl, haga esto onkeydown. entonces debes verificar la clave de enter. desactive la bandera cuando vea una combinación de teclas para Ctrl.
$('my_text_area').focus(function{ set_focus_flag });
//ctrl on key down set flag
//enter on key down = check focus flag, check ctrl flag
En realidad éste es el truco y funciona en todos los navegadores:
if ((event.keyCode == 10 || event.keyCode == 13) && event.ctrlKey)
enlace a js fiddle
encontré respuestas de otros, ya sea incompleto o no entre navegadores compatibles.
Este código funciona en google chrome.
$(function()
{
$(document).on("keydown", "#textareaId", function(e)
{
if ((e.keyCode == 10 || e.keyCode == 13) && e.ctrlKey)
{
alert('ctrl+enter');
}
});
});
¿Podría considerar mejorar su respuesta agregando más explicaciones? Gracias :) De lo contrario, esta sería una respuesta de baja calidad a una pregunta de baja calidad. – Theolodis
@Valamas: ¿Puedes decir cuál es el uso de "event.keyCode == 10" en tu respuesta? –
Me encantan las respuestas de copiar y pegar – xamde
Esto puede extenderse a una simple y flexible, pero-plugin JQuery como en:
$.fn.enterKey = function (fnc, mod) {
return this.each(function() {
$(this).keypress(function (ev) {
var keycode = (ev.keyCode ? ev.keyCode : ev.which);
if ((keycode == '13' || keycode == '10') && (!mod || ev[mod + 'Key'])) {
fnc.call(this, ev);
}
})
})
}
Así
$('textarea').enterKey(function() {$(this).closest('form').submit(); }, 'ctrl')
debe enviar un formulario cuando el usuario presiona ctrl-entrar con centrarse en el área de texto de esa forma.
(Con agradecimiento a https://stackoverflow.com/a/9964945/1017546)
solución universal
Soporta OS X también.
if ((e.ctrlKey || e.metaKey) && (e.keyCode == 13 || e.keyCode == 10)) {
// do something
}
No ignore esta respuesta porque tiene un puntaje más bajo, es solo una respuesta más nueva, en realidad es mejor. –
Tal vez un poco tarde para el juego, pero esto es lo que uso. También forzará el envío de la forma que es el objetivo actual del cursor.
$(document.body).keypress(function (e) {
var $el = $(e.target);
if (e.ctrlKey && e.keyCode == 10) {
$el.parents('form').submit();
} else if (e.ctrlKey && e.keyCode == 13) {
$el.parents('form').submit();
}
});
- 1. Enviar datos desde el área de texto presionando "Enter"
- 2. detectar Ctrl + Enter
- 3. en el área de texto con jQuery
- 4. jQuery ajustar el texto seleccionado en un área de texto
- 5. jQuery: Impedir la tecla enter
- 6. Limitando el número de líneas en el área de texto
- 7. de entrada: Texto + selector de área de texto en jQuery
- 8. ¿Cómo puedo permitir solo shift + enter para devolver una nueva línea en el área de texto?
- 9. Capturar texto pegado en un área de texto con JQuery
- 10. Reemplazar el texto seleccionado en el área de texto
- 11. Javascript presentar cuadro de texto en ENTER
- 12. Prevención "Enter" de la presentación del modelo, pero permitir que en los campos de área de texto (jQuery)
- 13. jquery área de texto de crecimiento automático versus texto inicial
- 14. jQuery: establece el ancho de un área de texto?
- 15. Cambiar el valor del área de texto con jQuery
- 16. Jquery para poblar la entrada o el área de texto
- 17. Cómo hacer que la tecla "Enter" en un área de texto envíe un formulario
- 18. jQuery Arrastrar y colocar en un área de texto
- 19. jQuery Área de texto en crecimiento móvil con datos AJAX
- 20. Creación de un área de texto falso
- 21. cómo obtener el valor de un área de texto en jquery?
- 22. Sangría automática de área de texto "inteligente"
- 23. Obtener número de línea en el área de texto
- 24. jQuery Escapar HTML a partir de un área de texto
- 25. ¿cómo llenas un área de texto con jquery y linebreaks?
- 26. Ctrl + C en un cuadro de texto
- 27. No permita que las nuevas líneas de área de texto
- 28. Buscar la siguiente área de texto usando jQuery
- 29. Cómo cambiar el número de filas en el área de texto usando jQuery
- 30. jquery trigger ctrl + clic
la respuesta que ha aceptado no funciona. Cambie su respuesta aceptada – peter