'How to capture cmd + enter event in jquery
I need to determine when a user presses cmd+enter after typing a text into a textarea. I'm using jquery.
Here's what I tried:
<textarea id="checkMetaKey"></textarea>
<div id="display"></div>
$( "#checkMetaKey" ).keyup(function( event ) {
$( "#display" ).text(event.metaKey + " " + event.keyCode);
});
JSFiddle: http://jsfiddle.net/WQG2b/
I would expect that to display "true 13" when cmd+enter is clicked. It's not the case however.
The only way I can get metaKey to be true is when I click CMD only or CMD+ALT or CMD+CTRL.
How do I capture a CMD+ENTER event?
Similar functionality seems to be working when I try it on Facebook, I'm able to submit message text using CMD+ENTER.
Solution 1:[1]
Use keydown. Also you should compare event.keyCode == 13
$("#checkMetaKey").keydown(function (event) {
$("#display").text((event.metaKey || event.ctrlKey) && event.keyCode == 13);
});
$("#checkMetaKey").keydown(function (event) {
$("#display").text((event.metaKey || event.ctrlKey) && event.keyCode == 13);
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<textarea id="checkMetaKey"></textarea>
<div id="display"></div>
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 |
