Avatar billede hansen Nybegynder
17. marts 2004 - 09:49 Der er 5 kommentarer

Valider for indhold

Jeg har en formular hvori man kan redigere nogle data vedr. billeder.
Her tjekkes der for om der er tastet data ind de rette steder, navn,billedefil og en beskrivelse

Når man skal redigere disse data, men ikke sende et nyt billede op, så fanger funktionen "valider" en fejl (billedefil) fordi jeg ikke har valgt et nyt billede, det skal den ikke !

Jeg har de gamle data liggende i et hidden felt (billedefil_temp) og kunne godt tænke mig at der tjekkes for om der er data i billedefil, og hvis ikke så tjekkes der efterfølgende for om der er data i billedefil_temp, og så skal den acceptere og køre videre med opgaven (Valider OK, og gemme data)

Kan det lade sig gøre ?

<script type="text/javascript">
  function valider(f){
    if(f.billedenavn.value==""){
      alert("Billedetitel skal udfyldes.");
      f.billedenavn.select();
      f.billedenavn.focus();
      return false;
    }
    if(f.billedefil.value==""){
      alert("Du skal først vælge et billede");
      f.billedefil.select();
      f.billedefil.focus();
      return false;
    }
    if(f.beskrivelse.value==""){
      alert("Beskrivelse af billedet skal udfyldes");
      f.beskrivelse.select();
      f.beskrivelse.focus();
      return false;
    }
    return true;
  }
</script>
Avatar billede nute Nybegynder
17. marts 2004 - 10:04 #1
kan du ikke bare lægge en linie helt i toppen af din funktion der tjekker for om der er inhold i feltet ?

  function valider(f){
    if( f.billedefil_temp.value.length > 0 )
    {
        return true;
    }
    if(f.billedenavn.value==""){
      alert("Billedetitel skal udfyldes.");
      f.billedenavn.select();
      f.billedenavn.focus();
      return false;
    }
    if(f.billedefil.value==""){
      alert("Du skal først vælge et billede");
      f.billedefil.select();
      f.billedefil.focus();
      return false;
    }
    if(f.beskrivelse.value==""){
      alert("Beskrivelse af billedet skal udfyldes");
      f.beskrivelse.select();
      f.beskrivelse.focus();
      return false;
    }
    return true;
  }
Avatar billede hansen Nybegynder
17. marts 2004 - 10:09 #2
Tjekker den så de andre felter ?
Der skal stadigvæk testes for indhold i billedenavn og beskrivelse
Avatar billede nute Nybegynder
17. marts 2004 - 10:19 #3
nej ... sådan som det er skrevet nu, så vil valideringen være ok hvis billedefil_temp har en værdi, men jeg kan godt se at dette bliver forkert. så skal du skifte denne linie (i din oprindelige kode):

if(f.billedefil.value==""){

ud med

if(f.billedefil.value=="" && f.billedefil_temp.value == ""){

denne gør at hvis der er indhold i 'billedefil', så er det ligemeget hvad der er i 'billedefil_temp' og omvendt ... hvis der er indhold i 'billedefil_temp', så er det ligemeget med om der er indhold i 'billedefil'. én af dem *skal* være udfyldt

/nute
Avatar billede hansen Nybegynder
17. marts 2004 - 13:33 #4
Hej nute, sender du et svar, tak.
Avatar billede nute Nybegynder
17. marts 2004 - 13:35 #5
s
v
a
r
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

IT-JOB

Digitaliseringsstyrelsen

IT-arkitekt hos Digitaliseringsstyrelsen

Riskpoint A/S (Riskpoint Solutions Limited)

IT Business Analyst

Capgemini Danmark A/S

AI Data Architect

Rambøll Management Consulting

Senior Software Engineer