webForumDet fria alternativet

Kontrollera värden i formulär

JavaScriptur Javascript

4 svar · 229 visningar · startad av TainEvil

Medlem sedan aug. 2002106 inlägg
Frågan#1

Tjohopp!

Har fastnat i ett litet problem som jag inte förstår, förmodligen för att man är helt kass på js.

Jag har ett formulär med två fält för inmatning av värden. Jag vill helt enkelt kontrollera att det andra värdet inte är mindre än det första. Den del av js-koden som ska kontrollera detta ser ut enligt nedan.

...
	else if (document.CardForm.fldLastCard.value < document.CardForm.fldFirstCard.value)
	{
		alert("<%=strErrLowLastCard%>")
		return false;
	}
...

Detta fungera bra så lägen talen består av samma antal siffror. Dvs om tal1=110 och tal2=105 så får jag en varning, men om tal1=998 och tal2=1002, så tycker den ändå att tal2 är mindre än tal1... Vad är galet??

Medlem sedan sep. 2002104 inlägg
#2

Jag tror det har att göra med att textboxarnas innehåll tolkas som text, även när de innehåller siffror.
Bör funka med parseInt.

(parseInt(document.CardForm.fldLastCard.value) < parseInt(document.CardForm.fldFirstCard.value))

Medlem sedan dec. 2000557 inlägg
#3

Konvertera om värdet från string till integer så borde det funka..

// Konvertering vid anropet
var intLastCard = document.CardForm.fldLastCard.value;
var intFirstCard = document.CardForm.fldFirstCard.value;

// Sedan detta istället
else if (intLastCard < intFirstCard)
	{
		alert("<%=strErrLowLastCard%>")
		return false;
	}
Medlem sedan dec. 2000557 inlägg
#4

Hoppsan.. där var jag lite sent ute.. :r ;)

Medlem sedan aug. 2002106 inlägg
#5

Det är ju inget trick när man kan det... :)

Tack för hjälpen, nu fungerar det ypperligt.

134 ms totalt · 3 externa anrop · v20260731065814-full.4bcf49fe
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)