webForumDet fria alternativet

Kontrollera värden.

7 svar · 380 visningar · startad av reka1

reka1Medlem sedan sep. 2001650 inlägg
#1

Go'kväll!
Har ett litet problem här. Jag vill kontrollera att inmatade data inte understiger eller överstiger vissa värden.
Har gjort så här:

<script type="text/javascript">
function validateForm(){
if (document.f.vikt.value < "40") || (document.f.vikt.value > "190" )
{
alert("Felaktigt värde! Ange ett tal mellan 40 - 90!");
return false;
}
}
</script>

Men saken är den att den släpper igenom alla värden, bortkommenterar man en av vilkoren fungerar det dock.
Finner ngn felet?
Tack på förhand!

EkströmMedlem sedan feb. 20022 594 inlägg
#2
<script type="text/javascript"> 
function validateForm(){ 
if (document.f.vikt.value < "40" || document.f.vikt.value > "190" ) 
{ 
alert("Felaktigt värde! Ange ett tal mellan 40 - 90!"); 
return false; 
} 
} 
</script>
EkströmMedlem sedan feb. 20022 594 inlägg
#3

Jojoxx skrev:

Du kan inte addera med strängvärden ("190" är ett strängvärde medans 190 är ett numeriskt värde). "190" + "10" är alltså "19010" medans 190+10 = 200.

Du kan använda funktionen parseInt(strängvärde) för att plocka ut heltalsdelen ur en sträng (från formuläret) eller parseFloat(stängvärde) för att plocka ut ett decimaltal.

Var i koden försöker han addera strängvärden?

JojoxxMedlem sedan juni 20004 308 inlägg
#4

Jag slarvläste frågan. Efter jag svarat läste jag en gång till och såg felet så jag plockade bort min tråd, men då hade du redan svarat :)

Tillägg:

Det skadar iofs aldrig att hålla isär strängvärgen och numeriska värden i alla fall, man sparar en del tid i felsökning senare.

EkströmMedlem sedan feb. 20022 594 inlägg
#5

Jaså :)

Trodde jag själv missat något. :)

reka1Medlem sedan sep. 2001650 inlägg
#6

Testade med Ekströms kdförslag. Dessvärre blev det motsatt effekt ;)
Dvs den släpper inte igenom ett smack.

PeWMedlem sedan juni 200010 432 inlägg
#7

reka1 skrev:

Testade med Ekströms kdförslag, dessvärre blev det motsatt effekt ;) Dvs den släpper inte igen ett smack.

Vad händer om du tar bort citationstecknen runt dina värden? Nu tolkas de ju som strängar snarare än som integers.

reka1Medlem sedan sep. 2001650 inlägg
#8

Perfekt! Där var knuten. Jag trodde att det skulle tolkas som att det inte får vara under 40 intmatade tecken eller fler än 190 inmatade; så jag brydde mig inte om att testa den varianten innan.

Ok, tack alla för hjälpen!!

131 ms totalt · 3 externa anrop · v20260731065814-full.37765c92
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)