Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  6 996
Prøver å lage en loop som går gjennom en form for å sjekke om alt er utfylt.

HTML-kode

var elem = document.getElementById('mainform').elements;
	
	for(i=0; i<elem.length; i++)
	{
		if(elem[i].type=="text"){
			if(elem[i].value==""){
				alert("Tomme tekstfelt")
			}
		}
		if(elem[i].type=="select"){
			if(elem[i].options.selectedIndex.value=="na"){
				alert("Ikke valgt selectboks")
			}
		}
	}
Her er koden min foreløpig, den første delen fungerer, den finner tekstfeltene og sjekker om de er tomme, men for select-boksene får jeg det ikke til uansett hva jeg prøver. "na" er verdien jeg har gitt det første valget som ikke skal bli godkjent.

Noen forslag til hva jeg må skrive for å få sjekke verdien?
eh, bare hent ut value direkte fra select-elementet slik du gjør for text?
Yochi's Avatar
Trådstarter
Har prøvd med "elem[i].value =="na";

Men det fungerer ikke

Kode

var s = document.getElementById("sted");
var sted = s.options[s.selectedIndex].value;
no sånt som dette kan funke
Yochi's Avatar
Trådstarter
Fant feilen, det var select-one og ikke select som var typen. Så da stemte ivioynar sitt forslag
ser jeg var litt kjapt ute med mitt svar, var jo en helt annen metode.

bra du fikk det til
z0p
uʍop ǝpısdn
z0p's Avatar
Et lite tips kan være å se litt på html5 form validering. Dersom du kan bruke html5 har mange nettlesere støtte for å automatisk validere input elementer, og du kan finne javascript bibliotek som tar seg av eldre nettlesere og nettlesere som ikke støtter form validering på klientsiden.