Rumah >hujung hadapan web >tutorial js >Mengapakah nilai input JavaScript saya sentiasa kosong, walaupun saya menaip dalam medan?
Apabila cuba mendapatkan semula sifat nilai daripada medan input untuk pengambilan data, anda mungkin menghadapi ralat yang tidak dijangka: nilai input kosong tanpa mengira apa yang anda taip. Misteri ini mungkin kelihatan membingungkan jika anda telah berjaya menyasarkan medan dan butang input yang betul.
Mari kita mendalami punca isu ini. Pembolehubah JavaScript, seperti inputValue dalam kod anda, memegang petikan nilai pada masa ia dibuat. Jadi, apabila anda melaksanakan skrip pada mulanya, pembolehubah inputValue diberikan rentetan kosong pada pemuatan halaman.
Malangnya, pembolehubah ini kekal tidak berubah walaupun terdapat pengubahsuaian yang berikutnya pada nilai medan input. Ini kerana rentetan JavaScript tidak boleh diubah dan tidak boleh diubah setelah ditetapkan. Oleh itu, sebarang ketukan kekunci yang anda buat dalam medan input tidak ditunjukkan dalam pembolehubah nilai input.
Untuk mengatasi cabaran ini, anda mempunyai dua pilihan :
1. Tanya Elemen Setiap Masa:
Daripada memberikan nilai kepada pembolehubah semasa pemuatan halaman, tanya elemen setiap kali butang diklik:
const testing = () => { const inputValue = document.getElementById("inputField").value; alert(inputValue); };
Pendekatan ini memastikan bahawa pembolehubah inputValue sentiasa mengandungi nilai terkini yang dimasukkan ke dalam medan input.
2. Gunakan Rujukan kepada Elemen:
Sebagai alternatif, anda boleh menyimpan rujukan kepada elemen dan menanyakan sifat nilai secara dinamik:
const inputElement = document.getElementById("inputField"); const testing = () => alert(inputElement.value);
Dengan menanyakan sifat nilai secara dinamik, anda elakkan kemungkinan perangkap menggunakan pembolehubah statik dan jamin bahawa anda berfungsi dengan nilai input semasa.
Atas ialah kandungan terperinci Mengapakah nilai input JavaScript saya sentiasa kosong, walaupun saya menaip dalam medan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!