Avatar billede hjelmb Nybegynder
27. juni 2003 - 10:47 Der er 7 kommentarer

Radiobutton=checked vha Javascript i PHP

Jeg har en form hvor en radiobutton skal klikkes af, på baggrund af et kriterie. Koden ser således ud:

<?php
}
if($row["tid"]=="19.30") {
?>
<script language="JavaScript">
document.forms[0].tidspunkt[1].checked=true;
</script>

Radiobuttons i min form:

<input name="tidspunkt" type="radio" value="seks">
</strong> <label>18.00</label> <strong> &nbsp;
<input name="tidspunkt" type="radio" value="halvotte">
</strong> <label>19.30</label> <strong> </strong></td>

Men jeg får en javascript fejl der lyder sådan her:
'document.forms.0.tidspunkt' er null eller ikke et objekt

Er der nogen der kan hjælpe mig. På forhånd tak
Liselotte
Avatar billede fri-hash Nybegynder
27. juni 2003 - 10:50 #1
tjah, giv din form et navn (<form name="formnavn" ...>) og så
<script language="JavaScript">
document.formnavn.tidspunkt[1].checked=true;
</script>
Avatar billede hjelmb Nybegynder
27. juni 2003 - 10:56 #2
Har prøvet det, men får nogenlunde samme fejl
Avatar billede fri-hash Nybegynder
27. juni 2003 - 11:02 #3
aarh, det skyldes nok at dit javascript står før din form i koden ... når scriptet så forsøges udført, er formen og radiobuttons ikke skrevet endnu og eksisterer derfor ikke ... prøv at flyt dette
<script language="JavaScript">
document.forms[0].tidspunkt[1].checked=true;
</script>
ned lige inden </body>
Avatar billede hjelmb Nybegynder
27. juni 2003 - 11:12 #4
Det kan desværre ikke lade sig gøre, da den php kode som indkapsler javascriptet skal ligge i starten. Hvis nu jeg lagde javascriptet i en seperat .js fil, hvordan får jeg så fat på min form?? Jeg ved godt jeg spørger om meget, men jeg har siddet i rigtig lang tid med det og kan bare ikke få det til at virke.
Avatar billede fri-hash Nybegynder
27. juni 2003 - 11:19 #5
ændre dette

<script language="JavaScript">
document.forms[0].tidspunkt[1].checked=true;
</script>

til

<script language="JavaScript">
function set_tidspunkt(){
  document.forms[0].tidspunkt[1].checked=true;
}
</script>

og tilføj så følgende mellem </body> og </html>

<script language="JavaScript">
set_tidspunkt();
</script>
Avatar billede roenving Novice
27. juni 2003 - 13:08 #6
<?php
}
if($row["tid"]=="19.30") {
echo("<input name=\"tidspunkt\" type=\"radio\" value=\"seks\"></strong> <label>18.00</label> <strong> &nbsp; <input name=\"tidspunkt\" type=\"radio\" value=\"halvotte\" checked></strong> <label>19.30</label> <strong> </strong></td>"
}else{
echo("<input name=\"tidspunkt\" type=\"radio\" value=\"seks\" checked></strong> <label>18.00</label> <strong> &nbsp; <input name=\"tidspunkt\" type=\"radio\" value=\"halvotte\"></strong> <label>19.30</label> <strong> </strong></td>"
}
?>
Avatar billede hjelmb Nybegynder
27. juni 2003 - 13:11 #7
Mange tak for hjælpen alle sammen, jeg har fået det til at virke
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