webForumDet fria alternativet

Validera okända formulär med loop

1 svar · 267 visningar · startad av Koggen

KoggenMedlem sedan juni 2002169 inlägg
#1

Jag behöver göra en funktion som loopar elementen i ett formulär och kollar om deras value är tom. Formulären i sig loopar jag ut med ASP, så antalet element kan variera.

Jag har sökt på valideringar (och det finns ju många inlägg om det), men hittar inte riktigt det jag söker. Jag vet att jag sett en sån funktion, och tror till och med att jag använt en för längesedan, men jag får inte till kodningen.

Det är bara koll om fälten / checkboxarna är tomma som behöver göras.

Tack på förhand

nitro2k01Medlem sedan aug. 20039 342 inlägg
#2

Verkar inte vettigt att man ska vara tvungen att kryssa i checkboxar? De finns väl där för att man ska kunna välja om man vill kryssa eller inte. Därför har jag markerat den kod du kan ta bort för att skippa checkboxarna. I övrigt ser det ut så här:

 
<html>
<head>
<script type="text/javascript"><!--

function arbitrarilyValidate(passform){
  var validates = true;
  
  for (i=0; i<passform.elements.length; i++){
      
    switch (passform.elements[i].type.toLowerCase() ){
      case "text":
      case "textarea":
        if (passform.elements[i].value.length == 0)
          validates = false;
        break;
//    BÖRJAN PÅ EV. BORTTAGNING
      case "checkbox":
        if (!passform.elements[i].checked)
          validates = false;
        break;
//    SLUT PÅ EV. BORTTAGNING
    }
  }

  if (!validates)
    alert("Vänligen fyll i alla rutor.");

  return validates;
}

//--></script>
</head>
<body>

<form name="foo" onsubmit="return arbitrarilyValidate(this)">
	
<textarea id="bar"> </textarea> <br />
<input id="check1" type="checkbox" /> <br />
<input id="check2" type="checkbox" /> <br />
<input id="input1" /> <br />
<input id="input2" /> <br />
<input id="input3" /> <br />
<input id="input4" /> <br />
<input id="input5" /> <br />
<input id="input6" /> <br />
<input id="namn" /> <br />
<input type="submit" /> <br />

</form>
</body>
</html>
126 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)