Ga naar inhoud

Script Fout


anoniem

Aanbevolen berichten

Hoi zoals jullie waarschijnlijk wel kunnen zien benk nieuw hier, ik ben hier min of meer ten einde raad. Ik heb namelijk in html en java een script geschreven voor een Mailto betalng, alleen nou wil helemaal onderaan in het script het laatste vakje niet optellen..:( Iemand een idee? <html> <style type="text/css"> <!-- .style1 { font-family: Arial, Helvetica, sans-serif; font-size: 12px; } --> </style> <body> <form action="MAILTO:nick.van.der.m@gmail.com" method="post" enctype="text/plain" class="style1"> <h3>Vul u gegevens hieronder in.</h3> Naam:<br> <input type="text" name="naam" size="20"> <br> Voornaam:<br> <input type="text" name="Voornaam" size="20"> <br> Postcode, Plaats<br> <input name="Postcode" type="text" size="6" maxlength="6"> <input type="text" name="Plaats" size="20" /> <br> Straat, Nr.<br> <input type="text" name="Straat"size="20"> <input name="Nr." type="text"size="6" maxlength="6" /> <br> Telefoon<br> <input type="text" name="Telefoon" size="20"> <br> Email<br> <input type="text" name="Email" size="20"> <br> Aantal<br> <input name="Email" type="text" size="2" maxlength="2"> <br> Email<br> <input type="text" name="Email" size="20"> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <p> <script type="text/javascript" language="javascript"> function TelOp() { var waarde; waarde = document.all.prijs.value * document.all.meters.value document.all.uitkomst.value = "" + waarde; } </script> </head> <body> </p> <p>-----------------------</p> <form> <p> <h3>Prijs per Spel, Inclusief Verzendkosten:</h3> <br> <input name="prijs" type="text" value="17.95" size="10" maxlength="5" readonly="true" /> <br/> aantal:<br> <input name="meters" type="text" onChange="javascript:TelOp()" value="0" size="2" maxlength="2"> <br/> Sub Totaal:<br> <script> function dothis() { var fielda = parseFloat(document.form2.uitkomst.value); var fieldb = parseFloat(document.form2.field2.value); document.form2.Totaal.value = (fielda+fieldb); } </script> </head> <body onload="dothis()"> <form name="form2"> <input name="uitkomst" type="text" size="10" readonly="true"> <input name="field2" type="text" value="6.20" size="10" maxlength="4" /> <br> <input type="text" name="Totaal" /> <input type="button" value="update" onclick="dothis()" /> <br><br> <input type="submit" value="Verzenden"> <input type="reset" value="Wissen"> </form> </body> </html> :( :(
Link naar reactie
[quote:1265e30a8a="teacher"]schoon eerst je code even op, ik tel volgens mij 3 body tags ofzo..[/quote:1265e30a8a] Het is zeker weten een zooitje ja. Sowieso werkt je script ook niet in Firefox. En nog even een laatstje puntje: Het is geen java maar java[b:1265e30a8a]script[/b:1265e30a8a]! Dat is een heel verschil, ondanks dat de naam anders doet vermoeden.
Link naar reactie
Allereerst ben ik het natuurlijk eens met de heren hierboven me. Het script is een beetje een rommeltje en dat maakt het debuggen er niet makkelijker op. Als de code recht-toe-recht-aan is, dan kan je deze ook beter 'lezen' en zo begrijpen wat er allemaal op welk moment wordt uitgevoerd. Als je nauwkeurig en netjes werkt, wordt de kans op fouten sowieso ook een stuk kleiner. Maar, dat gezegd hebbende, heb ik wel even naar je code gekeken en ben er eens flink met de bezem doorheen gegaan. Kijk eens rustig wat het nu is geworden. Ik ga ervan uit dat je op basis van deze code wel weer verder kan. Een belangrijke tip: Spreek form-elementen aan via [i:b55bb0312b]document.forms['formnaam'].elements['inputnaam'][/i:b55bb0312b] of [i:b55bb0312b]document.forms[formvolgnr].elements[elementvolgnr][/i:b55bb0312b]. Die methode werkt in alle browsers en geeft ook de minste kans op fouten. Als je wat meer bekend bent met javascript, dan zou je er ook voor kunnen kiezen om de elementen via het DOM (getElementById) te benaderen. [code:1:b55bb0312b] <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> <style type="text/css"> .style1 { font-family: Arial, Helvetica, sans-serif; font-size: 12px; } </style> <script type="text/javascript"> function geldopmaak(x) { // zorgt ervoor dat floats als 0.00 string worden teruggeven // werking: bepaal positie van de punt en plak eventueel wat nullen aan de string // als er een tweede parameter wordt meegegeven, dan wordt deze voor de string geplakt (bijv '€ ') var prefix = arguments[1] || ''; var bedrag = (Math.round(x*100)/100).toString(); // afrondingstrucje var punt = bedrag.indexOf('.'); if (punt == -1) { bedrag += '.00'; } else if ((bedrag.length-punt) == 2) { bedrag += '0'; } return prefix + bedrag; } function bereken_totaal(f) { var fielda = parseFloat(f.elements['uitkomst'].value); var fieldb = parseFloat(f.elements['field2'].value); f.elements['Totaal'].value = geldopmaak(fielda+fieldb); } function bereken_subtotaal(f) { var waarde = f.elements['prijs'].value * f.elements['meters'].value f.elements['uitkomst'].value = geldopmaak(waarde); } </script> </head> <body> <form action="mailto:email@adres.com" method="post" enctype="text/plain" class="style1"> <h3>Vul uw gegevens hieronder in.</h3> Naam:<br> <input type="text" name="naam" size="20"> <br> Voornaam:<br> <input type="text" name="Voornaam" size="20"> <br> Postcode, Plaats<br> <input name="Postcode" type="text" size="6" maxlength="6"> <input type="text" name="Plaats" size="20" /> <br> Straat, Nr.<br> <input type="text" name="Straat"size="20"> <input name="Nr." type="text"size="6" maxlength="6" /> <br> Telefoon<br> <input type="text" name="Telefoon" size="20"> <br> Email<br> <input type="text" name="Email" size="20"> <br> Aantal<br> <input name="Email" type="text" size="2" maxlength="2"> <br> Email<br> <input type="text" name="Email" size="20"> <p> </p> <p>-----------------------</p> <p> <h3>Prijs per Spel, Inclusief Verzendkosten:</h3> <br> <input name="prijs" type="text" value="17.95" size="10" maxlength="5" readonly="true" /> <br/> aantal:<br> <input name="meters" type="text" onchange="bereken_subtotaal(this.form)" value="0" size="2" maxlength="2"> <br/> Sub Totaal:<br> <input name="uitkomst" type="text" size="10" readonly="readonly"> <input name="field2" type="text" value="6.20" size="10" maxlength="4" /> <br> <input type="text" name="Totaal" /> <input type="button" value="update" onclick="bereken_totaal(this.form)" /> <br><br> <input type="submit" value="Verzenden"> <input type="reset" value="Wissen"> </form> </body> </html> [/code:1:b55bb0312b]
Link naar reactie
[quote:59cc9cfccd="Annie"]Allereerst ben ik het natuurlijk eens met de heren hierboven me. Het script is een beetje een rommeltje en dat maakt het debuggen er niet makkelijker op. Als de code recht-toe-recht-aan is, dan kan je deze ook beter 'lezen' en zo begrijpen wat er allemaal op welk moment wordt uitgevoerd. Als je nauwkeurig en netjes werkt, wordt de kans op fouten sowieso ook een stuk kleiner. Maar, dat gezegd hebbende, heb ik wel even naar je code gekeken en ben er eens flink met de bezem doorheen gegaan. Kijk eens rustig wat het nu is geworden. Ik ga ervan uit dat je op basis van deze code wel weer verder kan. [/code][/quote:59cc9cfccd] heel erg bedankt hier kan ik absoluut verder mee!
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...