Mengesan "Shift Enter" dan Menjana Baris Baharu dalam Textarea dengan jQuery
Dalam borang web, menekan "Enter" dalam textarea biasanya menyerahkan borang tersebut. Walau bagaimanapun, anda mungkin mahu melaksanakan gelagat yang berbeza, seperti mencipta baris baharu apabila "Shift Enter" ditekan.
jQuery Solution
$("#textarea_id").on("keydown", function(evt) { if (evt.keyCode == 13 && evt.shiftKey) { // Insert a newline character if (evt.type == "keypress") { pasteIntoInput(this, "\n"); } // Prevent form submission evt.preventDefault(); } }); function pasteIntoInput(el, text) { el.focus(); if (typeof el.selectionStart == "number" && typeof el.selectionEnd == "number") { var val = el.value; var selStart = el.selectionStart; el.value = val.slice(0, selStart) + text + val.slice(el.selectionEnd); el.selectionEnd = el.selectionStart = selStart + text.length; } else if (typeof document.selection != "undefined") { var textRange = document.selection.createRange(); textRange.text = text; textRange.collapse(false); textRange.select(); } }
Penyelesaian JavaScript Biasa
var textarea = document.querySelector("#textarea_id"); textarea.addEventListener("keydown", function(evt) { if (evt.keyCode == 13 && evt.shiftKey) { if (evt.type == "keypress") { pasteIntoInput(this, "\n"); } evt.preventDefault(); } });
Atas ialah kandungan terperinci Bagaimana untuk Mengesan 'Shift Enter' dan Buat Baris Baharu dalam Textarea Menggunakan jQuery atau JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!