Avatar billede tryout Nybegynder
23. oktober 2003 - 17:07 Der er 7 kommentarer og
1 løsning

function til at check form

Jeg sidder og skriver en gæstebog til min side. Jeg havde tænkt mig at lave en funktion i asp, der kontrollere at formen er udfyldt korrekt inden den poster til en anden side.

Jeg er heller ikke helt sikker på om der er en funktion i asp der hedder submit(), ved der er en i JavaScript, men hvad hedder den ellers?


kode: (funktionen)
<%
Function checkForm()

'kontrollere at formen er udfyldt rigtigt
    If Len(strNavn) = 0 Then
        strError = "<li>Du skal skrive dit navn!</li>"
    ElseIf validateEmail(strEmail) = False Then
        strError = "<li>Du skal skrive en gyldig e-mail adresse!</li>"
    ElseIf Len(strKommentar) = 0 Then
        strError = "<li>Du skal skrive en kommentar!</li>"
    End If
    If Len(strError) = 0 Then
    submit()
    else Response.Write strError
    End If
End Function

%>
Avatar billede netro Nybegynder
23. oktober 2003 - 17:15 #1
ASP afvikles efter, at formularen er sendt. Du kan IKKE blande tingene på den måde.
Avatar billede netro Nybegynder
23. oktober 2003 - 17:16 #2
Derfor skal du aflæse din form med:

If Trim(Request.Form("Navn")) = "" Then
  Response.Write "Skriv dit navn!"
Else
  'Indsæt i database eller gør noget andet
End If

Osv...
Avatar billede netro Nybegynder
23. oktober 2003 - 17:24 #3
Det lyder som, du lige bør lære, hvad ASP egentlig er, inden du begynder at bruge det. http://www.html.dk/tutorials/asp/lektion1.asp
Avatar billede tryout Nybegynder
23. oktober 2003 - 18:12 #4
Det er altså ikke et svar, jeg kan bruge til særlig meget, du får lige form koden så kan det være det giver lidt mere menning.

KODE: (form)
<form method="post" action="konnForum.asp?data=1">
<table align="center" width="512" style="border: solid 1px rgb(195,161,3)">

<tr>
<td class="MenuItem">Udfyld fælterne og "tryk":<%=strError%></td>
</tr>

<tr>
<td class="MenuItem" align="right">navn:</td>
<td align="left"><input type="text" name="Navn" size="40" value="<%=strNavn%>"></td>
</tr>

<tr>
<td class="MenuItem" align="right">Email:</td>
<td align="left"><input type="text" name="Email" size="40" value="<%=strEmail%>"></td>
</tr>

<tr>
<td class="MenuItem" align="right">Kommentar:</td>
<td align="left"><textarea rows="3" name="Kommentar" cols="40" ><%=strKommentar%></textarea>
</td>
</tr>

<tr>
<td class="MenuItem" align="left">
<input type="button" name="Tag" value="Tag" onClick="checkForm()"><input type="button" value="Annuller" name="Annuller" onClick="java script:location.href='Forum.asp?dataID=1'"></td>
</tr>
</table>
</form>
Avatar billede tryout Nybegynder
23. oktober 2003 - 18:21 #5
Men ide var at istedet for at poste med det samme, ville jeg kalde en funktion der først kontrollere formens indhold, men det kan godt være man ikke kan lave det på den måde. Kan man evt. lave det JavaScript?
Avatar billede netro Nybegynder
23. oktober 2003 - 18:41 #6
Ja, med Javascript kan du tjekke formularen, INDEN den bliver sendt.
Se: http://www.html.dk/scripts/javascript/ under validering af formularer. Der står alt, hvad du behøver at vide.
Avatar billede popeye_2k Nybegynder
20. november 2003 - 10:23 #7
Når jeg laver form validering bruger jeg som regel et "hidden" felt i min form som jeg sætter til whatever fks. "check" som værdi

Den hiver jeg så ud med en Request.Querystring

Selve min form ville jeg så holde i en select case funktion
Som når man åbner siden først viser formen, dvs feltet med "check" som værdi endnu ikke er sat og derfor vil den vise siden..
derefter har man en case mulighed hvor den tjekker om variablen man læser check ind i er sat til "check, hvis den er det kører man valideringen i den.

Håber du forstår hvad jeg mener..

Det kræver at du kender lidt til ASP / VB for og kunne lave lidt mere avanceret check på det indtastede, men det er ikke så svært som det lyder..

<%
Validate = Request.Querystring("validate")

select case Validate
    case "check"
        Sæt din validerings kode ind her
    case ""
          sæt din HTML form ind her...
end select

%>

det er meget kortet ned men er i grove træk såen man kunne lave det
Avatar billede popeye_2k Nybegynder
20. november 2003 - 10:23 #8
^^ var et svar :-)
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
Kurser inden for grundlæggende programmering

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