Ich habe dieses Eingabefeld, das
<input name="question"/>
ich beim Senden auf die Schaltfläche IsEmpty aufrufen möchte.
Ich habe den folgenden Code ausprobiert, aber nicht funktioniert. irgendein Rat?
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=unicode" />
<meta content="CoffeeCup HTML Editor (www.coffeecup.com)" name="generator" />
</head>
<body>
<script language="Javascript">
function IsEmpty() {
if (document.form.question.value == "") {
alert("empty");
}
return;
}
</script>
Question: <input name="question" /> <br/>
<input id="insert" onclick="IsEmpty();" type="submit" value="Add Question" />
</body>
</html>
javascript
Eyla
quelle
quelle
return false
... etc etcAntworten:
quelle
if
Anweisung bewirken, dass nur die letzte Prüfung zurückgegeben wird: stackoverflow.com/a/5348007/713874Siehe das Arbeitsbeispiel hier
Ihnen fehlt das gewünschte
<form>
Element. So sollte Ihr Code aussehen:quelle
Ein Eingabefeld kann Leerzeichen haben , das möchten wir verhindern.
Verwenden Sie String.prototype.trim () :
Beispiel:
quelle
Ich möchte das erforderliche Attribut hinzufügen, falls der Benutzer Javascript deaktiviert:
Es funktioniert auf allen modernen Browsern.
quelle
quelle
Fügen Sie Ihrem Eingabeelement eine ID "Frage" hinzu und versuchen Sie Folgendes:
Der Grund, warum Ihr aktueller Code nicht funktioniert, ist, dass Sie dort kein FORM-Tag haben. Außerdem wird die Suche mit "Name" nicht empfohlen, da sie veraltet ist.
Siehe die Antwort von @Paul Dixon in diesem Beitrag: Wird das Attribut 'name' für <a> Ankertags als veraltet angesehen?
quelle
quelle
<input>
Element; Dies würde nur im IE funktionieren, da der IE defekt ist.Fügen Sie dem Eingabeelement einfach ein ID-Tag hinzu ... dh:
und überprüfen Sie den Wert des Elements in Ihrem Javascript:
document.getElementById ("Frage"). Wert
Oh ja, hol dir Firefox / Firebug. Dies ist die einzige Möglichkeit, Javascript zu erstellen.
quelle
Meine Lösung unten ist in es6, weil ich verwendet habe,
const
wenn Sie es5 bevorzugen, können Sie alleconst
durch ersetzenvar
.quelle
Bevor Sie den obigen Code verwenden können, müssen Sie die Datei gen_validatorv31.js hinzufügen
quelle
Wenn wir alle Ansätze kombinieren, können wir so etwas tun:
Beachten Sie, dass Sie dies auf dem Server tun sollten, wenn Sie wirklich Werte überprüfen möchten. Dies liegt jedoch außerhalb des Bereichs für diese Frage.
quelle
Sie können jede Eingabe nach dem Senden durchlaufen und prüfen, ob sie leer ist
quelle
quelle