Notwendigkeit zurückzukehren wahr oder falsch basierend auf, wenn der Wert im Textfeld eine bestimmte Anzahl ist
-
26-09-2019 - |
Frage
Ich suche true zurück, wenn der Benutzer 4 in das Eingabefeld eingegeben werden.
function validateAddition() {
if($("#validateAddition").val() == 4) {
return true;
} else {
return false;
}
}
<input value=""
class="validate[required,onlyNumber,length[0,1]funcCall[validateAddition]] text-input"
type="text" id="validateAddition" name="validateAddition" />
Neue Angebote dieser in die Sprache Englisch js-Datei:
"validateAddition":{
"nname":"validateAddition",
"alertText":"* Your math is off, try again."}
Dies sollte in Ordnung sein, lassen Sie mich wissen, was Sie denken, ist falsch.
Lösung
http://www.w3schools.com/jsref/jsref_parseInt.asp
return (parseInt($('#validateAddition').val()) == 4)
EDIT: MooGoo richtig ist, ich habe mich geirrt, soweit meine Erklärung
.Allerdings ist Idee von + val verwendet, ist wahrscheinlich nicht die beste. Während die oben beschriebene Methode wird funktionieren, wie Sie eine viel bessere Lösung erfordern wie folgt wäre:
if(($('#validateAddition').val()-0) == 4)
Der Grund, warum wir wollen -0 zu +0 Gegensatz ist einfach, weil, wenn es sich um eine Zeichenfolge, und Sie möchten zusätzliche Operationen auszuführen incase es ist, werden Sie nicht mehr die ursprüngliche Zeichenfolge haben.
Andere Tipps
Wenn Sie auch andere Zeichen zulassen mögen, und gibt nur wahr, wenn der Text des Eingabefeldes 4 enthält, sollten Sie diesen stattdessen tun:
if($("#validateAddition").val().indexOf('4') != -1) {
Es würde Sinn, den Wert in eine Zeichenfolge zu vergleichen, da der Wert eine Zeichenfolge ist. Das erlaubt Ihnen, strenge equals Vermeidung unnötiger automatische Konvertierungen zu verwenden. Sie können auch die Funktion vereinfachen.
function validateAddition() {
return $("#validateAddition").val() === "4";
}
Sie können Ihre Validierung in der Sprachdatei setzen, so etwas wie folgt aussehen
"validateAddition": {
"regex": /[0-3]|[5-9]/,//something that matches on all numbers but four
"alertText": "* Your math is off, try again."
},