Gå til innhold

Validere tekstfelter med javascript


Anbefalte innlegg

Jeg gir en bruker lov til å velge hvor mange enheter som skal lagres i et system, og deretter lager jeg et tekstfelt for hver enhet han har valgt å legge inn. Velger han 10 så lages 10 tekstfelter, som inneholder informasjon om hver enkelt enhet. IMEI til mobiler i dette tilfellet.

 

PHP/HTML koden er slik

 

<form name="telefoner" action="php/InsertToDb.php" method="POST" onsubmit="return validate();">

 

<p class="vanligtekst">

<?php

for($counter=0; $counter < $antall; $counter++)

{

$temp = $counter+1;

 

echo "Telefon nr."."$temp";

echo "  ";

echo "<input type=\"text\" name=\"imei[]\" size=\"20\">";

echo "<br>";

}

 

?>

 

som dere ser har jeg en onsubmit funksjon som heter validate();

Denne inneholder denne koden

 

<script language="javascript">

function validate() {

if ((imei[].value.length==0) || (imei[].value==null))

{

//return true;

alert("feil");

return false;

}

else { return true; }

}

 

Denne kodefnutten ligger rett etter <body>

 

MEN! Det funker steikanes dårlig... noen forslag?

 

</script>

Lenke til kommentar
  • 1 måned senere...
Videoannonse
Annonse

Har ikke vært borti name="imei[]"-varianten for flere felter før. Jeg ville gjort noe slikt:

 


<?php
for($counter=0; $counter < $antall; $counter++)
{
   $temp = $counter+1;

   echo "Telefon nr."."$temp";
   echo "  ";
   echo "<input type=\"text\" id=\"imei$counter\" name=\"imei$counter\" size=\"20\">";
   echo "<br>";
}

?>

 

og

 


<script type="text/javascript">

function validate() {
   for (i = 0; i < <?php print $antall; ?>; ++i) {
       imei = document.getElementById("imei" + i);
       if (imei.value.length == 0)
       {
           window.alert("feil");
           return false;
       }
   }
   return true;
}

</script>

 

Og javascriptet kan godt være innenfor head-taggene.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...