Ich habe ein Formular, das Eingabefelder vom Typ Nummer enthält, jedes Eingabefeld hat eine entsprechende Beschriftung. Ich möchte nach dem Absenden des Formulars eine „Überprüfungsseite“ hinzufügen, auf der Sie Ihre Antworten auf jedes Eingabefeld sehen können (obwohl Sie nicht alle ausfüllen müssen), genau wie Sie die Tags sortieren. Wenn ich beispielsweise 4 in das Eingabefeld mit der Bezeichnung „Mark Twain“ schreibe, möchte ich „Auswahl 4: Mark Twain“ anzeigen. Ich kann das Format nicht in <select>
ändern, wo im Formular jedes Eingabefeld eine eindeutige Beschriftung hat.
Ich habe jedes Eingabefeld in HTML auf Folgendes eingestellt:
<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>
Ich habe den folgenden Code in PHP ausprobiert:
if (isset($_POST["num_a"])) {$a= "Mark Twain"; echo "Choice ", $_POST["num_a"], ":", $a, "<br>";}
Diese Methode funktioniert gut, wenn num_a tatsächlich eingegeben wird. Auch wenn num_a nicht ausgefüllt ist, erscheint es immer auf der Bewertungsseite und sieht also so aus:
„Wahl: Mark Twain“
Was kann ich tun, um das Eingabefeld nur anzuzeigen, wenn es einen Wert hat? Damit nur das Eingabefeld erscheint, in dem Zahlen eingegeben werden?
如果输入为空,则不打印输入。
由于
0
不是有效的输入值,您可以简化为: