Avatar billede sjorge Nybegynder
28. april 2003 - 11:24 Der er 20 kommentarer og
1 løsning

Validering af en Ønskeboks

Jeg har brug for en validering på "ønskeboksen" på min side; http://students.aabc.dk/sjorge15/Default.htm
Det skal ikke kunne lade sig gøre at sende "tomme ønsker"

Har brug for hurtig hjælp, da det er til en eksames opgave.

På for hånd tak.
VH Simon
Avatar billede =maddog= Nybegynder
28. april 2003 - 11:34 #1
du finder ud af om der er objekter i en select med
_Select.options.length
hvis
_Select.options.length == 0
skal du ikke submitte. Altså i en form:
<form .... onsubmit="return this.onskebox.options.length">
<select name="onskebox" ..>

beklager, men "vis kode" virker ikke på min maskine af en eller anden grund
Avatar billede mm12010 Nybegynder
28. april 2003 - 11:39 #2
<script language="JavaScript" type="text/JavaScript">
<!--
function tomOnske(f){
    onsker = String(f.select1.value);
    if((onsker == "undefined")||(onsker == "")){
        return false;
        }
    else{
        return true;
        }
    }
//-->
</script>
<form onSubmit="tomOnske(this)">
Avatar billede =maddog= Nybegynder
28. april 2003 - 11:43 #3
jeg regner med at mm12010 har kigget i koden. skal bare tilføje
onsubmit="return this.select1.options.length"
til form så
<form .... onsubmit="return this.onskebox.options.length">
Avatar billede =maddog= Nybegynder
28. april 2003 - 11:43 #4
<form .... onsubmit="return this.select1.options.length">
grrr. sorry
Avatar billede =maddog= Nybegynder
28. april 2003 - 14:42 #5
og du havde brug for hurtig hjælp....
Avatar billede sjorge Nybegynder
28. april 2003 - 14:58 #6
Hold da op... jeg har siddet og arbejdet med det i flere timer, men kan ikke få det til at virke !! Jeg ved ikke hvad jeg gør fejl, men jeg har bestemt brug for hjælp!

Mvh. Simon
Avatar billede =maddog= Nybegynder
28. april 2003 - 15:06 #7
Det kunne du have sagt jo :)
slet onsubmit i <form> og lav din send knap om til.
<input type="button" style="width:70px;" value="Send data" onClick="SelectAll(this.form.select1);if (this.form.select1.options.length) submit();" style="float: left"></a></p>
Avatar billede sjorge Nybegynder
28. april 2003 - 15:11 #8
Så nu ser det ud til den virker... Men der bliver ikke sendt noget til min email, og der kommer heller ikke en validerings tekst ( Fx. Du skal vælge nogle ønsker)... Så det er endnu ikke optimalt..

Mvh. Simon
Avatar billede =maddog= Nybegynder
28. april 2003 - 15:17 #9
Well. Selve spørgsmålet var jo at du ikke ville have den til at sende hvis ønsker var tom, så det gik jeg ud fra.
Der er nu ingen grund til panik.
onClick="SelectAll(this.form.select1);if (this.form.select1.options.length) submit() else emptyData();"

og så pakker du de ting du gerne vil i emptyData() i et separat script (gerne anbragt i <head> så det loader før <body>)
<script>
function emptyData() {
alert("Ønsker du ingenting???");
alert("Send email kode her);
}
</script>

eller skal den sende email hvis boxen er fuld?
Avatar billede sjorge Nybegynder
28. april 2003 - 15:18 #10
Lækkert arbejde hund.. Jeg prøver lige lidt med det her.. Men jeg spørger dig nok igen.

Mvh. SImon
Avatar billede =maddog= Nybegynder
28. april 2003 - 15:19 #11
vent lidt. du må ikke neste <form>
<form>
    <form> <!-- denne form er ugyldig -->
    </form>
</form>
Avatar billede sjorge Nybegynder
28. april 2003 - 15:35 #12
Hm... Du skal lave et lidt mere "færdigt" arbejde.. Det eneste krav, er at der skal poppe et tekst op, hvis man prøver at sende, uden at vælge nogen ønsker! Og skal det være sådan at man kan læse de ønsker som er valgt..

mvh. Simon
Avatar billede =maddog= Nybegynder
28. april 2003 - 15:48 #13
Avatar billede =maddog= Nybegynder
28. april 2003 - 16:48 #14
er det færdigt?
Avatar billede sjorge Nybegynder
28. april 2003 - 19:37 #15
Hej, ja det virker jo rigtigt dejligt. Du er virkelig en guttermann.. Mange tak for hjælpen..
Der er dog STADIGT et lille problem.. Jeg kan ikke set de ønsker som bliver tilsendt... Scriptet opstarter bare min email !!

Mvh. SImon
Avatar billede =maddog= Nybegynder
28. april 2003 - 19:42 #16
html og javascript kan ikke sende emails som sådan. det skal der et server-script til.
Her vælger jeg at ligge et svar. Det er ikke for at presse dig, men fordi jeg ikke umiddelbart kan hjælpe dig yderligere.
Avatar billede sjorge Nybegynder
29. april 2003 - 09:31 #17
Det har virket! Der sendte den bare en email, som viste hvilke optioner som var valgt! Men efter "vi" rodede med siden igår, virker det ikke mere, nu starter den bare outlook ;/ ..
Well, hvis du ikke kan hjælpe mig gør det ikke noget. Du skal have tak for al den hjælp du allerede har givet mig!
Avatar billede =maddog= Nybegynder
29. april 2003 - 14:08 #18
du har drømt. selvfølgelig kan man ikke sende en mail fra brugeren med html. det ville jo blive misbrugt groft.
Avatar billede sjorge Nybegynder
29. april 2003 - 15:37 #19
Der blev sendt en mail til min adresse, hvori optioner stod ! !.... Nu åbner den bare outlook :(
Avatar billede =maddog= Nybegynder
29. april 2003 - 16:26 #20
mailto: åbner altid bare en email klient hos brugeren. hvad brugte du før? har du anvendt et cgi script? har du brugt ActiveX komponenter. Du må have haft et eller andet der kunne sende mail.
Det er også muligt (selvom jeg aldrig har hørt om det) at man kan indstille email klienten (outlook, whatever) til automatisk at afsende mails fra <form>, men i så fald skal brugeren selv have slået det til.
Har du adgang til CGI scripts på din server? I så fald er det måske en ide at kigge efter et CGI script der kan afsende mails...
Avatar billede mm12010 Nybegynder
05. august 2003 - 12:26 #21
lukketid?
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