Avatar billede dmg Nybegynder
22. februar 2005 - 08:34 Der er 9 kommentarer og
1 løsning

validering af dropdown

Hej eksperter.

Nedenstående generer dropdown boxe udfra database. Jeg skal bruge et javascript, der vailiderer, hvis bare en af dropdownboxene ikke er har en value på 0, skal den køre og hvis ikke komme op med en alert(Du har ikke valgt nogen varer). Håber i kan hjælpe! :-)

if($gaver->getBillede() != '')
                {
                    print "<tr><td><select size='1' name='".$gaver->getId()."'>";
                    for($i=0; $i <= $gaver->getLager(); $i++)
                    {
                        print "<option value='".$i."'>".$i."</option>";
                    }
                    $status = $gaver->getLager() > 0 ? $gaver->getLager() : "Udsolgt";
                    print "</select></td><td>".$gaver->getGave()."</td><td><img src='".$internetPath."./pictures/".$gaver->getBillede()."' height='91' width='92'></td><td>".$status."</td><td><a href='".$internetPath."html/posthandler.php?gave_id=".$gaver->getId()."&&afdeling=".$_POST['afdeling']."'>Vis</a></td>";
                       
                }
Avatar billede dmg Nybegynder
22. februar 2005 - 08:34 #1
hhhmm... koden ser ikke så pæn ud, men det er bare en dropdown der bliver lavet i en løkke, udfra databasen.
Avatar billede fennec Nybegynder
22. februar 2005 - 08:41 #2
Prøv dette (ikke testet):

var obj = document.getElementsByTagName("select")
for(f=0;f<obj.length;f++)
{
  if(obj.selectedIndex == 0)
    alert("Du har ikke...")
}
Avatar billede dmg Nybegynder
22. februar 2005 - 08:50 #3
hhhmmm... det ser rigtig nok ud, men hvor skal jeg sætte det ind henne? Jeg er ikke så dygtig til sådan noget javascript der...
Avatar billede fennec Nybegynder
22. februar 2005 - 08:58 #4
Du kunne sætte det på formen:

<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
function checkIt()
{
  var obj = document.getElementsByTagName("select")
  for(f=0;f<obj.length;f++)
  {
    if(obj[f].selectedIndex == 0)
    {
      alert("Du har ikke...")
      return false;
    }
  }
  return true;
}
//-->
</SCRIPT>
<form name="myForm" method="post" onsubmit="return checkIt()">
....
<input type="Submit" value="Send">
</form>

Der var foresten en lille fejl i koden, men den er rettet.
Avatar billede dmg Nybegynder
22. februar 2005 - 09:07 #5
okay super!!! Har lavet javascriptet i en fil for sig, nu er det bare scriptet der skal tilpasses, idet fejlen "Du har ikke..." kommer uanset om man har valgt noget eller ej. Har du nogle gode ideer?
Avatar billede dmg Nybegynder
22. februar 2005 - 09:12 #6
arrhaaa... faktisk virker dit script, men det er sikkert mig der ikke har forklaret ovenstående ordenligt!

Der bliver ca. generet 10 dropdown boxe... som standard værdi har alle 0. og så er det menningen at bare man vælger een, som har en anden værdi en 0, så må man køre videre. Men hvis alle sammen har værdien 0, så skal der komme fejl.
Avatar billede fennec Nybegynder
22. februar 2005 - 09:16 #7
Det så jeg også lige :o)
Brug denne i stedet:

function checkIt()
{
  var obj = document.getElementsByTagName("select")
  for(f=0;f<obj.length;f++)
  {
    if(obj[f].selectedIndex != 0)
    {
      return true;
    }
  }
  alert("Du har ikke...")
  return false;
}
Avatar billede dmg Nybegynder
22. februar 2005 - 09:18 #8
du er genial! Dejligt. Hit med et svar så du kan få dine points ;-)
Avatar billede fennec Nybegynder
22. februar 2005 - 09:19 #9
.o) <-- One Eyed Jack
Avatar billede dmg Nybegynder
22. februar 2005 - 09:25 #10
hehe... thanx buddy! Skal nok bruge et javascript senerer hen også... Men nu vil jeg lige se, om jeg selv kan lave det :-) ellers kan det være jeg lige skal have lidt hjælp der. Foreløbigt tak!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester