Rumah > hujung hadapan web > tutorial css > Bagaimanakah Saya Boleh Mengesan 'Shift Enter' untuk Memasukkan Baris Baharu dalam Textarea Daripada Menghantar Borang?

Bagaimanakah Saya Boleh Mengesan 'Shift Enter' untuk Memasukkan Baris Baharu dalam Textarea Daripada Menghantar Borang?

Patricia Arquette
Lepaskan: 2024-11-30 09:25:13
asal
386 orang telah melayarinya

How Can I Detect

Mengesan "Shift Enter" dan Memasukkan Baris Baharu dalam Textarea

Secara lalai, menekan kekunci "Enter" di dalam textarea menyerahkan borang. Walau bagaimanapun, anda ingin mengekalkan fungsi ini sambil membenarkan pengguna membuat baris baharu dengan menekan kombinasi kekunci "Shift" "Enter". Begini cara untuk mencapai ini dalam JavaScript:

Jika anda mengawal skrip yang membuat "Enter" menyerahkan borang, cuma ubah suai kod untuk menyemak sama ada kekunci "Shift" tidak ditekan. Sebagai contoh, tukar ini:

if (evt.keyCode == 13) {
    form.submit();
}
Salin selepas log masuk

... kepada ini:

if (evt.keyCode == 13 && !evt.shiftKey) {
    form.submit();
}
Salin selepas log masuk

Walau bagaimanapun, jika anda tidak mempunyai akses kepada kod asal, anda boleh menggunakan skrip berikut untuk mencapai tingkah laku yang diingini, walaupun kursor tidak berada di penghujung teks:

function handleEnter(evt) {
    if (evt.keyCode == 13 && evt.shiftKey) {
        if (evt.type == "keypress") {
            pasteIntoInput(this, "\n");
        }
        evt.preventDefault();
    }
}

// Handle both keydown and keypress for Opera as it suppresses default key action in keypress
$("#your_textarea_id").keydown(handleEnter).keypress(handleEnter);
Salin selepas log masuk

Skrip ini menyemak "Shift" "Enter" kombinasi kunci. Apabila dikesan, ia memasukkan aksara baris baharu ("n") ke dalam kawasan teks menggunakan fungsi pasteIntoInput dan menghalang penyerahan borang lalai.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesan 'Shift Enter' untuk Memasukkan Baris Baharu dalam Textarea Daripada Menghantar Borang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan