webForumDet fria alternativet

Alla fält får inte vara tomma...

JavaScript

2 svar · 258 visningar · startad av kolas

Medlem sedan mars 2001142 inlägg
Frågan#1

Jag har ett sökformulär med 8st olika fält och jag vill kunna kontrollera att alla fält inte är tomma samtidigt då man klickar på sök.

Borde det inte finnas nå´t lätt sätt att kolla om alla fält är tomma så ska det visas en alert, men om man bara t ex skriver in ett sökord i ett fält så ska den inte bry sig om att de andra fälten är tomma?

Medlem sedan aug. 20039 340 inlägg
#2

Enda nackdelen med detta skript är att alla input måste ha samma class, dessutom får inga andra elemten inom samma form ha samma class (tex submit-knappen). Isåfall tror skriptet nämligen att submit-knapppen är en ifylld ruta och skickar formen...

 
<script><!--

function checkboxes(){
	var els = document.forms["foo"].elements;
	for(i=0;i<els.length;i++){
		if ((els[i].className == "textruta" ) && els[i].value){
			// Hittade ett ifyllt fält, submitta
			return true;
		}
	}
	// Hittade inget ifyllt fält...
	alert("Fyll i åtminstone ett fält!")
	return false;
}

//--></script>

<form onsubmit="checkboxes();" name="foo" >

<input name="box1" class=textruta /><br />
<input name="box2" class=textruta /><br />
<input name="box3" class=textruta /><br />
<input name="box4" class=textruta /><br />
<input name="box5" class=textruta /><br />
<input name="box6" class=textruta /><br />
<input name="box7" class=textruta /><br />
<input name="box8" class=textruta /><br />
<input name="box9" class=textruta /><br />
<input type=submit />
</form>
Medlem sedan mars 2001142 inlägg
#3

Tack!
Det var precis vad jag letade efter.

287 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
128 ms — deklarationer (db)
0 ms — hämta statistik (cache)
155 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)