Rumah > Soal Jawab > teks badan
Saya mempunyai borang yang mengandungi kotak input nombor jenis, setiap kotak input mempunyai label yang sepadan. Saya ingin menambah "halaman ulasan" selepas menyerahkan borang di mana anda boleh melihat jawapan anda kepada setiap kotak input (walaupun anda tidak perlu mengisi kesemuanya), sama seperti anda mengisih teg. Sebagai contoh, jika saya menulis 4 dalam kotak input berlabel "Mark Twain", saya mahu memaparkan "Pilihan 4: Mark Twain". Saya tidak boleh menukar format kepada <select>
, di mana dalam bentuk setiap kotak input mempunyai label yang unik.
Saya menetapkan setiap kotak input dalam HTML kepada:
<label><input type="number" name="num_a" min="1" max="14" autocomplete="off" oninput="this.value = this.value.replace(/[^0-9.]/g, ''); this. Value = this.value.replace(/(\..*)\./g, ''); this.setCustomValidity('')" oninvalid="this.setCustomValidity('Please enter a number between 1 and 14')" class="unique"> <span>Mark Twain</span></label>
Saya mencuba kod berikut dalam PHP:
if (isset($_POST["num_a"])) {$a= "Mark Twain"; echo "Choice ", $_POST["num_a"], ":", $a, "<br>";}
Kaedah ini berfungsi dengan baik apabila num_a sebenarnya dimasukkan. Walau bagaimanapun, walaupun num_a tidak diisi, ia sentiasa muncul di halaman ulasan, jadi ia kelihatan seperti ini:
"Pilihan: Mark Twain"
Apakah yang boleh saya lakukan untuk hanya menunjukkan kotak input apabila ia mempunyai nilai? Supaya hanya kotak input di mana nombor dimasukkan akan muncul?
P粉4137042452023-09-15 11:25:11
Jika input kosong, input tidak dicetak.
if (isset($_POST['num_a']) && $_POST['num_a'] != '') { $a= "Mark Twain"; echo "Choice ", $_POST["num_a"], ":", $a, "<br>"; }
Memandangkan 0
bukan nilai input yang sah, anda boleh ringkaskan kepada:
if (!empty($_POST['num_a'])) { $a= "Mark Twain"; echo "Choice ", $_POST["num_a"], ":", $a, "<br>"; }