113 votes

Ctrl + Entrée jQuery dans TEXTAREA

Comment déclencher quelque chose lorsque le curseur est dans TEXTAREA et que l'on appuie sur Ctrl + Entrée? Utilisation de jQuery. Merci

158voto

Yaroslav Yakovlev Points 1634

En fait, celui-ci fait l'affaire et fonctionne dans tous les navigateurs:

 if ((keyCode == 10 || keyCode == 13) && event.ctrlKey)
 

lien vers js fiddle

142voto

CMS Points 315406

Vous pouvez utiliser le drapeau event.ctrlKey pour voir si la touche Ctrl est enfoncée, quelque chose comme ceci:

 $('#textareaId').keydown(function (e) {

  if (e.ctrlKey && e.keyCode == 13) {
    // Ctrl-Enter pressed
  }
});
 

Vérifiez l'extrait ci-dessus ici .

5voto

Valamas - AUS Points 8359

J'ai trouvé des réponses incomplètes ou incompatibles entre navigateurs.

Ce code fonctionne Google Chrome.

 $(function ()
{
    $(document).on("keydown", "#textareaId", function(e)
    {
        if ((e.keyCode == 10 || e.keyCode == 13) && e.ctrlKey)
        {
            alert('ctrl+enter');
        }
    });
});
 

0voto

mkoryak Points 18135

vous devez d’abord définir un drapeau lorsque vous appuyez sur Cntr, faites ceci onkeydown. alors vous devez vérifier la keydown de enter. désélectionnez le drapeau lorsque vous voyez une augmentation de touche pour cntrl.

0voto

idrumgood Points 3870
$('my_text_area').focus(function{ set_focus_flag });

//ctrl on key down set flag

//enter on key down = check focus flag, check ctrl flag

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X