Jeg har et problem med dette script. Meningen er at hvis jeg afkrydeser checkboxen så bruger den value=ja hvis checkboxen ikke er afkrydset er value = nej. Hvorfor virker det ikke?
Det er ikke lykkedes mig ikke at få det til at virke, som det står beskrevet(?). Men generelt, så er det en skidt ide at bruge reserverede ord som f.eks. "checkbox" til navne. Du bør også altid ende en event med at returnere true eller false!
grunken>> det er da hverken mere eller mindre ligefremt - det er bare en omskrivning fra "if-else" til "?:;" - det er selvfølgelig lidt mere kompakt, men når alt kommer til alt en smagssag :P~
Jeg tror at vi begge har opgivet at finde fejl i den stump kode du har vist os - det er simpelthen ikke dér fejlen ligger.
Jeg er ikke helt sikker på hvad du mener når du skriver "selve formen sendes til en database når jeg skriver xxx" - men jeg er også på vej i kanen, så vi må vist se på det i morgen i stedet for! :-/
Hvis du har mere javascript på siden, så er der muligvis noget der konflikter med det du viser os her?
Prøv evt. at gemme disse to filer i samme bibliotek: ---8<-----[test.htm]----- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>john1 form</title> <meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1"> </head>
---8<-----[getParameterViewer.htm]----- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html> <head> <title>parametre overført med GET metoden</title> <meta http-equiv="Content-type" content="text/html; charset=ISO-8859-1"> </head>
<body> <center> <table border=1 cellspacing=0 cellpadding=3> <tr><td colspan=2 bgcolor=cccccc><b>Parametre overført med GET metoden</b></td></tr> <script language="javascript" type="text/javascript"> var tmpArray; var origParameter = unescape(location.search.substr(1).replace(/\+/g," ")); var parametre = origParameter.split(/\&/); for (i=0; i<parametre.length; i++){ tmpArray = parametre[i].split(/\=/); if (tmpArray[0] && tmpArray[1]){ document.write("<tr><td bgcolor='cccccc'>"+tmpArray[0]+"</td><td>"+tmpArray[1]+"</td></tr>\n"); } else if (tmpArray[0]){ document.write("<tr><td bgcolor='cccccc'>"+tmpArray[0]+"</td><td> </td></tr>\n"); } } </script> </table>
</center> </body> </html> ---8<---------- send formen fra test.htm med hhv. checkboxen checked og unchecked, og fortæl mig hvad du ser på getParameterViewer.htm. Det er det jeg bruger til at teste din kode, og i min IE60 (+ alle de andre browsere - øjensynligt også grunkens) virker det som det skal.
Jeg tror, du har misforstået en checkbox' virkemåde. Den må ikke sende sin værdi med, når den ikke er checked. Kun, hvis checkbox'en er krydset af, må den sendes med til serveren. Derfor er det ganske ligegyldigt, hvad checkbox'ens value er, hvis den ikke er checked, når formen submittes.
Når man skal ud i JS-workarounds for den slags ting, er det ofte fordi, man har grebet problemet forkert an fra start. Du har formodentlig en uhensigtsmæssig databehandling i din applikation, men det er ikke til at sige uden at kende projektet i enkeltheder. /mvh
... anytime :) Din applikation ved formodentlig, hvilke checkbox'e der er oprettet. Så kan du jo - i dit modtage-dokument - blot spørge, om disse er 'on' eller ej. /mvh
Synes godt om
Ny brugerNybegynder
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.