Artikel ini menjelaskan solusi JS untuk masalah pengiriman formulir Web yang dinonaktifkan. Bagikan untuk referensi Anda. Analisis spesifiknya adalah sebagai berikut:
Misalnya, ada bentuk sebagai berikut
Salin kode kode sebagai berikut: <form id = "inputForm" Action = "shorttermrental.action" method = "Post">
<input name = "pname" type = "text" id = "pname" value = "xxx" size = "20" dinonaktifkan = "dinonaktifkan"/>
<input name = "Tapi" type = "kirim" id = "tetapi" value = "xxx" size = "20"/>
</form>
Ketika kami mengirimkan formulir, kami tidak bisa mendapatkan data pName di latar belakang karena properti kotak input dinonaktifkan. Ada solusi berikut untuk fungsi ini:
1. Ubah atribut "dinonaktifkan" dinonaktifkan ke readonly = "readonly" sebagai gantinya. Fungsinya pada dasarnya sama, readitly juga dapat mendukung peristiwa OnFocus. (Penggunaan yang disarankan)
Salin kode kode sebagai berikut: <input name = "xxx" id = "xxx" value = "xxx" size = "20" readonly = "readonly"/>
2. Gunakan JS untuk memodifikasi atribut yang dinonaktifkan saat mengirimkan formulir
Salin kode kode sebagai berikut: <input name = "tetapi" type = "tombol" id = "tetapi" value = "xxx" size = "20"/>
<type skrip = "Teks/JavaScript">
function submit_form () {
// metode penulisan javascript
document.geteLementById ("pName"). Disable = "";
document.geteLementById ("inputForm"). Kirim ();
// metode penulisan jQuery
$ ("#pName"). attr ("dinonaktifkan", false);
$ ("#inputForm"). Kirim ();
}
</script>
3. Dapatkan nilai pName di JS, lewati dalam bentuk parameter, dan ubah nilai tindakan formulir. Tentu saja, dengan cara ini, Anda perlu memodifikasi kode latar belakang untuk mendapatkan parameter (getParameter);
Salin kode sebagai berikut: <script type = "text/javascript">
function submit_form () {
// metode penulisan jQuery
var pname = $ ("#pname"). val ();
$ ("#inputForm"). attr ("action", "shorttermrental.action? panme ="+pname+"& p ="+new date ());
$ ("#inputForm"). Kirim ();
// metode penulisan javascript
var pName = document.getElementById ("pname"). value;
document.geteLementById ("pname"). action = "shorttermrental.action? panme ="+pname+"& p ="+tanggal baru ();
document.geteLementById ("pName"). Kirim ();
}
</script>
Sedikit tip: Ketika kita menulis bahasa skrip, kita umumnya tertarik pada penulisan jQuery, karena sangat ringkas. JQuery merangkum JavaScript dan menggunakan pencocokan ekspresi reguler untuk diperoleh saat mengambil nilai setara HTML.
Oleh karena itu, itu pasti akan mempengaruhi efisiensi, sehingga disarankan agar Anda biasanya menggunakan javascript ketika ada sejumlah besar skrip.
Saya harap artikel ini akan membantu pemrograman JavaScript semua orang.