webForumDet fria alternativet

Kontrollera formulär

6 svar · 207 visningar · startad av kerouac

kerouacMedlem sedan nov. 200013 inlägg
#1

Hej

Jag har en sida med ett stort formulär där användaren skall fylla i olika värden som sedan skrivs in i en databas med hjälp av ASP. Nu vill jag kontrollera att användaren har fyllt i alla textrutor så att det inte skickas med "tomma" värden. Jag har fått ett tips att det går att lösa med Javascript men vet ej hur. Vore tacksam för tips.

Fridens
Niclas

easMedlem sedan sep. 2001269 inlägg
#2

Typ:

if (formuläret=="" && formuläret==null){
return false; }

------------------
Schöndells webbsajt

JojoxxMedlem sedan juni 20004 308 inlägg
#3

Snyggaste sättet att lösa det beror på vad du har för sorts fält i formuläret (om det bara är text-fält), men detta är ett generellt sätt. I <form>-taggen lägger du till onSubmit="return checkit(this);" sedan gör du ett litet script som ser ut så här;

<script language="JavaScript" type="text/javascript">
function checkit(obj){
   if(!obj.foo.value){
      alert('Du måste fylla i fältet foo');
      return false;
   }else if(!obj.bar.value){
      alert('Du måste fylla i fältet bar');
      return false;
   }else{
      return true;
   }
}
</script>

I exemplet kollas alltså 2 fält, foo och bar.

------------------
/ J

spangoMedlem sedan juni 20008 205 inlägg
#4

... och sist men inte minst får du fortfarande inte glömma bort att kolla det med asp på serversidan.

------------------
You can't be young forever, but you can be immature indefinitely.

kerouacMedlem sedan nov. 200013 inlägg
#5

Nu är det så att jag har en hel drös med textrutor som skall kollas upp. Det går inte att skriva nån smidig funktion som kollar upp alla textrutor istället för att skriva in ruta efter ruta i koden?

Niclas

kerouacMedlem sedan nov. 200013 inlägg
#6

Jag hittade en kod här på webforum som verkar smidig men den vill ej fungera. Kan nån se felet?

<script language="JavaScript">
<!--
function kolla(f){

for(var j = 0; j < f.elements.length; j++){
if(!f.elements[j].value && f.elements[j].type.toLowerCase == "text"){
alert("Fyll i alla fält!");
f.elements[j].focus();
return false;
}
}
return true;
}
//-->
</script>
<form method="POST" action="uppdaterastuga.asp" name="f" onsubmit="return kolla(this);" >

spangoMedlem sedan juni 20008 205 inlägg
#7

Byt ut
if(!f.elements[j].value && f.elements[j].type.toLowerCase == "text"){
mot
if(!f.elements[j].value){

------------------
You can't be young forever, but you can be immature indefinitely.

127 ms totalt · 3 externa anrop · v20260731065814-full.86db40fa
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)