Oprettet man. d. 14. januar 2013 kl. 09:35:59

VisueltDesign
VisueltDesign (5.040 point. Point ude: 520)


Valider form og opret svardokument

Hej eksperter

Jeg skal bruge et javascript der kan følgende:

En form bestående af eks. vis 3 tekstfelter + submit

Skal checke for at indholdet er korrekt udfyldt:
eks. vis "formfelt1" skal være udfyldt med ordet "ordnung", "formfelt2" skal være "muss" og "formfelt3" skal være "sein".

Efterfølgende skal html side genereres med tilbagesvar af antal rigtige samt points: Eks.: "Du havde "antal" formfelter rigtige - det giver dig "variabel 1-3" points.

(I dette tilfælde: 1 point for 1 rigtig, 2 points for 2 osv.)

På forhånd tak.

Skrevet man. d. 14. januar 2013 kl. 13:20:32| #1

Her er en med popup:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
        "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Pop Up Point</title>
    <script type="text/javascript">
    function popUp(){
        var point=0;
        if(document.getElementById('felt1').value.toLowerCase()=="ordnung"){
            point++;
        }
        if(document.getElementById('felt2').value.toLowerCase()=="muss"){
            point++;
        }
        if(document.getElementById('felt3').value.toLowerCase()=="sein"){
            point++;
        }
    alert('Du havde '+point+' formfelter rigtige - det giver dig '+point+' points.');
    }
    </script>
</head>
<body>
    <h1>Pop Up Point</h1>
    <form name="points" action="" method="POST">
    <input type="text" id="felt1" name="felt1">
    <input type="text" id="felt2" name="felt2">
    <input type="text" id="felt3" name="felt3">
    <input type="submit" name="send" id="sendBtn" value="Send" onclick="popUp()">
    </form>
   
</body>
</html>

Skrevet man. d. 14. januar 2013 kl. 13:31:38| #2

VisueltDesign
VisueltDesign (5.040 point)
Hej Michael

Det er rigtig fint ;-) Jeg skal bruge en, der opretter helt nyt html dokument - er det til at tilpasse?

Skrevet man. d. 14. januar 2013 kl. 14:17:22| #3

I stedet for alert, kan du bruge document.write og på den måde generere et htmldokument.

Skrevet man. d. 14. januar 2013 kl. 14:24:54| #4

<!DOCTYPE HTML>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Pop Up Point</title>
    <script type="text/javascript">
    function popUp(){
        var point=0;
        if(document.getElementById('felt1').value.toLowerCase()=="ordnung"){
            point++;
        }
        if(document.getElementById('felt2').value.toLowerCase()=="muss"){
            point++;
        }
        if(document.getElementById('felt3').value.toLowerCase()=="sein"){
            point++;
        }
    document.writeln("<!DOCTYPE html>");
    document.write ("<html><head><title>NEWDOCUMENT</title> </head><body><p>");   
    document.write('Du havde '+point+' formfelter rigtige - det giver dig '+point+' points.');
    document.write ("</p></body></html>");
    document.close();
    }
    </script>
</head>
<body>
    <h1>Pop Up Point</h1>
    <form name="points" action="" method="POST">
    <input type="text" id="felt1" name="felt1">
    <input type="text" id="felt2" name="felt2">
    <input type="text" id="felt3" name="felt3">
    <input type="submit" name="send" id="sendBtn" value="Send" onclick="popUp();">
    </form>
   
</body>
</html>

Skrevet man. d. 14. januar 2013 kl. 14:40:23| #5

VisueltDesign
VisueltDesign (5.040 point)
Det var lige i øjet ;-)

Skrevet man. d. 14. januar 2013 kl. 17:33:33| #6

olebole
olebole (219.518 point)
<ole>

- men husk, at brugeren selv bestemmer sit pointantal, da hun jo kan se svaret i kildekoden  *o)

/mvh
</bole>

Skrevet fre. d. 18. januar 2013 kl. 15:22:40| #7

VisueltDesign
VisueltDesign (5.040 point)
Meeeeeeen....

Hvorfor virker det ikke i Safari?

Skrevet fre. d. 18. januar 2013 kl. 17:47:10| #8

olebole
olebole (219.518 point)
#7: Forkert spørgsmål. Det korrekte spørgsmål lyder: "Hvorfor mon det virker i andre browsere end Safari og Chrome?"  =)

Scriptet giver ikke så meget mening, da submit af en form jo skal indebære et sideskift. Faktisk virker scriptet kun som forventet i Safari og Chrome.

I de to browsere overskrives dokumentet, hvorefter siden skiftes - helt som det bør ske. Hvorfor IE, Firefox og Opera så ikke gør, som de bør, kan jeg ikke svare på  =)

Skrevet fre. d. 18. januar 2013 kl. 18:25:27| #9

VisueltDesign
VisueltDesign (5.040 point)
#8: Har lavet masser af småting (med Javascript), hvor submit af en form kun resulterer i udregninger og lign. - og ikke nødvendigvis et sideskift... Det er muligt at opfinderne ikke havde de intentioner - men hvis det virker... ;-)

#4: Findes der alternativer til document.write - der åbenbart er noget hø, hvis man bruger Safari? (Jeg har Googlet det)

Skrevet fre. d. 18. januar 2013 kl. 18:36:41| #10

olebole
olebole (219.518 point)
"Har lavet masser af småting (med Javascript), hvor submit af en form kun resulterer i udregninger og lign. - og ikke nødvendigvis et sideskift"

Nej, ikke med mindre du har foretaget dig noget aktivt for ikke at få formen submittet.

document.write fungerer fint i Safari (og Chrome). Problemet med scriptet er som sagt ikke, at der ikke skrives noget ud - men at siden efterfølgende skiftes ... præcis som det bør forventes  =)

Er det en ren frontend ting, eller skal der også sendes data til en server? Hvis koden kun skal afvikles i browseren, skal der ikke være noget FORM element. Så vil scriptet give mening i IE, Firefox og Opera - og det vil også virke i Safari og Chrome

Skrevet fre. d. 18. januar 2013 kl. 18:53:21| #11

VisueltDesign
VisueltDesign (5.040 point)
#10 Se eks. vis BMI beregneren i diabetes2.dk

Er det ikke en form?

Men yes. det er en ren frontend-ting. Scriptet skal kunne afvikles off-line i browseren.

Skrevet fre. d. 18. januar 2013 kl. 18:59:48| #12

olebole
olebole (219.518 point)
Jo, det er en FORM, men den har jo ingen submitknap, hvorfor den aldrig submittes. Altså er der gjort noget aktivt for, at formen ikke skal submittes  =)

Men hvorfor overhovedet bruge et totalt overflødigt element? Når der ikke skal submittes data, giver et FORM element ikke mening ... der er intet at bruge det til  =)

Skrevet fre. d. 18. januar 2013 kl. 19:10:02| #13

VisueltDesign
VisueltDesign (5.040 point)
#12 Forstået. Men hvad gør man så, når man gerne vil have 3 indtastningsfelter, der skal valideres ift. indhold og en ny side dannes med resultatet - og det skal kunne bruges off-line?

Skrevet fre. d. 18. januar 2013 kl. 19:24:48| #14

olebole
olebole (219.518 point)
Slet FORM-elementet - det bruges ikke til noget

Skriv et indlæg




Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] [img]link til billede[/img]
Web- og emailadresser omdannes automatisk til links

Log ind

   


Seneste spørgsmål

Søgning på egen hjemmeside med script fra Google giver...

Oprettet den 23. november 2014 kl. 11.49
brejl giver 30 point for svar | Giv et svar »

Formular med download feature

Oprettet den 22. november 2014 kl. 18.42
kim_rechenberger giver 60 point for svar | Giv et svar »

Hjælp til jQuery

Oprettet den 19. november 2014 kl. 13.51
Kast20 giver 60 point for svar | Giv et svar »

Seneste guides

Malwarebytes version 2.0.3.1025
Find ejeren af et vilkårligt domæne
Undgå reklamerne på iPad





Computerworld

Teaser billede

Nu er det slut med Java til NemID: Her er den nye løsning

Om få dage er det helt slut med at benytte Java til NemID. Læs her, hvad der kommer til at erstatte Java-appletten.

Comon

Teaser billede

Fire lette trin: Få hastigheden tilbage i din iPhone eller iPad

Apples iOS 7 har masser af fine funktioner, men styresystemet har desværre også den uheldige sideeffekt, at det gør ældre iPhones og iPads sløve. Se her, hvordan du løser problemerne.

Channelworld

Teaser billede

Et nyt Microsoft rejser sig: Her er alle beviserne

Microsoft blev kørt over af Apple på mobilmarkedet, er bagud i ræset om søgemaskiner, og andre ejer de sociale medier. Men it-giganten er i gang med sin egen seje genrejsning. Og den er værd at...

White paper

Teaser billede

Mobility og autentificering

Aladdin eToken er et stærkt token lifecycle management-system, som understøtter to-faktor-autentificering og fungerer med VPN og kryptering.



Udgiver · © 2014 Computerworld A/S · Hørkær 18 · 2730 Herlev · Tlf.: 77 300 300 · Fax: 77 300 301 · Brug af personoplysninger