You have to prevent the keydown
on textarea
on all keyboard keypress except ctrl+c, ctrl+v, command+c, command+v keys.
Use event.metaKey
for the mac command key.
Try to copy the text of textarea using ctrl+c or paste any text inside it using ctrl+v
Stack Snippet
var textarea = document.getElementById("text");
textarea.addEventListener("keydown", function(event) {
var key = event.key;
var cmd_key = event.metaKey;
var ctrl_key = event.ctrlKey;
if ((cmd_key && key == "c") || (ctrl_key && key == "c")) {
return true;
} else if ((cmd_key && key == "v") || (ctrl_key && key == "v")) {
return true;
} else {
event.preventDefault();
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<form method="post">
<h3>Text:</h3>
<textarea id="text" name="text" rows="4" cols="50">Copy this text and paste</textarea>
<br><br>
</form>