Avatar billede excession Nybegynder
28. september 2002 - 14:19 Der er 10 kommentarer og
1 løsning

validering

Hey

jeg vil gerne have at der laves validering på en formular.  i formularen kan brugeren vælge filer der skal uploades og samtidig udfylde en beskrivelse.

filerne må kun være jpg filer og hver fil skal have en beskrivelse.
brugeren behøver ikke at udfylde hele formularen, men der skal væer en beskrivelse for hver jpg fil

er der nogen der kan hjælpe? eller fortællemig hvordan jeg kommer i gang med det..

  <FORM METHOD="POST" ENCTYPE="multipart/form-data" ACTION="uploadcode3.asp">
      ID = <INPUT TYPE=TEXT NAME="ID" VALUE="<%=request.querystring("id")%>"><BR>
      <br>
      <br>

      File 1:<INPUT TYPE=FILE NAME="FILE1"><br>
      Description 1:<INPUT TYPE=TEXT NAME="DESCR1"><BR>
      <br>
      File 2:<INPUT TYPE=FILE NAME="FILE2"><br>
      Description 2:<INPUT TYPE=TEXT NAME="DESCR2"><BR>
      <br>
      File 3:<INPUT TYPE=FILE NAME="FILE3"><br>
      Description 3:<INPUT TYPE=TEXT NAME="DESCR3"><BR>
      <br>
      File 4:<INPUT TYPE=FILE NAME="FILE4"><br>
      Description 4:<INPUT TYPE=TEXT NAME="DESCR4"><BR>
Avatar billede excession Nybegynder
28. september 2002 - 14:22 #1
eks:

      File 1:<INPUT TYPE=FILE NAME="FILE1">
      Description 1:<INPUT TYPE=TEXT NAME="DESCR1">

hvis brugeren vælger en fil ved FILE1 skal han også udfylde DESCR1
hvis brugeren ikke udfylder FILE1 behøver han hellere ikke at udfylde DESCR1
Avatar billede jakoba Nybegynder
28. september 2002 - 14:40 #2
<script type='text/javascript'>

          // nedenstående giver et antal advarsler i Opera fordi
          // vi aflæser værdien i file-felter
function validerUploads( frmObj ) {
              // vi forudsætter fortløbende numre fra 1 til N
    for ( i=1; frmObj.elements["FILE"+i]; i++ ) {
        var fil = frmObj.elements["FILE"+i].value;
        if ( fil != "" ) {  // hvis der er udfyldt noget
            if ( fil.substr( fil.length-4 != "jpg" ) {
                frmObj.elements["FILE"+i].focus();
                return false        // det er ikke et .jpg filnavn
            }
            if ( frmObj.elements["DESCR"+i].value == "" ) {
                frmObj.elements["DESCR"+i].focus();
                return false;        // der mangler en beskrivelse
            }
        }
    }
    return true;  // ingen fejl fundet.
}; //end validerUploads( html Form object ) -> boolean

</script>


funktionen skal kaldes med formen som parameter. fx:
<form ... onsubmit="return validerUploads(this);"

mvh JakobA
Avatar billede jakoba Nybegynder
28. september 2002 - 14:41 #3
Ups.  der mangler en ) pg et .
            if ( fil.substr( fil.length-4 ) != ".jpg" ) {
Avatar billede excession Nybegynder
28. september 2002 - 15:07 #4
ok.. så den submitter ikke medmindre FILE feltet også har en DESCR felt der er udfyldt?
Avatar billede excession Nybegynder
28. september 2002 - 15:08 #5
den submitter faktisk ikke selvom den er udfyldt..
Avatar billede jakoba Nybegynder
28. september 2002 - 15:11 #6
og du har fået rettelsen med . foran jpg med?  ".jpg"
Avatar billede excession Nybegynder
28. september 2002 - 15:15 #7
nope.. nu virker det :)

kanon jakoba.. du styrer!

tror også jeg kan sætte value i det felt som ikke er udfyldt til at være "Skal udfyldes" ?
Avatar billede jakoba Nybegynder
28. september 2002 - 15:22 #8
...
            if ( frmObj.elements["DESCR"+i].value == "" ) {
                frmObj.elements["DESCR"+i].value = "skal udfyldes";
                frmObj.elements["DESCR"+i].focus();
                return false;        // der mangler en beskrivelse
            }
...
Avatar billede excession Nybegynder
28. september 2002 - 15:25 #9
kanon! tak skal du have..

kan du lægge et svar? :)

så kan jeg bare lave if sætningen igen og checke om der står "skal udfyldes" på samme med som før ikke? :)
Avatar billede jakoba Nybegynder
28. september 2002 - 15:27 #10
Jo.

mvh JakobA
Avatar billede excession Nybegynder
28. september 2002 - 15:31 #11
tak for det
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