Det tycker jag verkar väldans dumt eftersom javascript skiljer på gemeneroch versaler. Så om du skriver ett värde! så där istället för som du gör i funktionen så kommer den att returna false.
leancuisine skrev:
Här är en klassiker jag kör:
function verifieraForm() {
if (document.form1.ruta1.value=="Ett värde!") {
action någonting;
return true;
}
else{
alert("Du måste fylla i lösenord!");
return false;
}
Tja, i kombination med din stränghanering
pass.toLowerCase()=="lösenord"
kan det nog bli ganska fint ;) Jag tänkte mer på själva grejen att jämföra med en sträng snarare än att kolla efter nollängd...
När jag tänker efter har du helt rätt, det är smartare att först plocka upp värdet från fältet i en variabel (som konverteras till lower case) och sedan köra if-satser på den variablen för olika händelser, än att köra if-satserna direkt på fältet....
Här har jag gjort en funktion som kollar längden och om längden är större än noll så kollar den om löseordet är lika med lösenord, oavsett hur det skrivs med gemener eller versaler. Om man vill kan man även sätta till att den söker efter strängen lösenord i vad du skriver och om den finns med nånstans så avbryter den sökandet och returnar false
var pass = document.login.login_pass.value;
if(pass.length !=0 && pass.toLowerCase()!="lösenord" ){
return true;
}
else{
alert("Du måste fylla i lösenord! Lösenordet får av säkerhetsskäl inte vara lika med \"lösenord\"");
return false;
}
133 ms totalt · 3 externa anrop · v20260731065814-full.b746b907