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

VisueltDesign
VisueltDesign (5.365 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.365 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.365 point)
Det var lige i øjet ;-)

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

olebole
olebole (219.843 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.365 point)
Meeeeeeen....

Hvorfor virker det ikke i Safari?

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

olebole
olebole (219.843 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.365 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.843 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.365 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.843 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.365 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.843 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

Radio button og visibility

Oprettet den 28. januar 2015 kl. 15.18
benneharli giver 30 point for svar | Giv et svar »

Kopiere array (mangler akut hjælp)

Oprettet den 19. januar 2015 kl. 09.04
chri633x giver 100 point for svar | Giv et svar »

Tusindseparator - omskriv fra , til .

Oprettet den 18. januar 2015 kl. 14.53
stsejs giver 60 point for svar | Giv et svar »






Computerworld

Teaser billede

Har du Windows 7 eller 8? Så kan du godt glæde dig til gratis Windows 10

Så fik vi endeligt nyt om Windows 10. Og vi begynder med en rigtig god nyhed. Nemlig at det bliver gratis at opdatere, hvis du har den rigtige version.

CIO

Teaser billede

Windows Phone elimineret: Sådan skal Windows 10 køre på din smartphone

Microsoft dropper Windows Phone som et selvstændigt styresystem og vil i stedet installere Windows 10 på Lumia-telefonerne. Men hvad betyder det egentlig for brugerne?

Comon

Teaser billede

Stortest: Her er de bedste gratis antivirus-programmer

Kan gratis sikkerhedssoftware virkelig beskytte din pc? Svaret er ja, hvis du vælger det rette produkt. Læs her en test af de mest pålidelige gratis sikkerhedsprogrammer.

Channelworld

Teaser billede

Konkursbegæringer på stribe hos dødsdømte TDC Erhvervscentre

Konsekvenserne af TDC's beslutning om at opsige 60 partneraftaler slår nu for alvor igennem rundt omkring i landet.

White paper

Teaser billede

Sikre identiteter er god forretning

Aladdin eToken er en stærk autentificeringsløsning, der understøtter nuværende og fremtidige krav og giver et højt investeringsafkast (ROI).



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