Как заставить ENTER делать что-то, а ENTER + SHIFT делать что-то еще одновременно? - PullRequest
0 голосов
/ 24 ноября 2018

У меня есть textarea, в котором, когда вы нажимаете Enter в одиночку, запускается JQuery Ajax, но я хочу добавить функцию, которая заключается в том, что когда вы нажимаете Enter + Shift, чтобы перейти только к новой строке и не запустить AJAX,Можете ли вы направить меня, пожалуйста, с этим?

вот код, который я написал до сих пор в jquery, но когда я нажимаю Shift + Enter, ajax также запускается, мне нужно устранить это

$('.inbox_message_textarea').keydown(function(e) {
  var code = e.keyCode || e.which;
  if(code == 13) { //Enter keycode
    console.log("You pressed Enter Key alone");
  }
  if( code == 13 && e.shiftKey ) {
    e.preventDefault();
    console.log("You pressed SHIFT+ENTER");
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea class="inbox_message_textarea"></textarea>

1 Ответ

0 голосов
/ 24 ноября 2018

Первая проверка Shift + Введите нажмите, а затем проверьте Введите нажмите.Также используйте else if вместо второго if

$('.inbox_message_textarea').keydown(function(e) {
  var code = e.keyCode || e.which;
  if (code == 13 && e.shiftKey) {
    e.preventDefault();
    console.log("You pressed SHIFT+ENTER");
  } else if (code == 13) { 
    console.log("You pressed Enter Key alone");
  }
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea class="inbox_message_textarea"></textarea>
...