Avatar billede skildpadden Nybegynder
09. december 2006 - 15:14 Der er 11 kommentarer og
1 løsning

Toggle checkbox

Jeg anvender nedenstående kode til at toggle en checkbox. Det fungerer perfekt i IE, men ikke i Firefox.

Er der nogen der kan se hvad fejlen måske er?

<script>
function toggleCheckbox(boxname){
    document.getElementById(boxname).checked = (document.getElementById(boxname).checked == 1) ? 0 : 1;
}
</script>
Avatar billede erikjacobsen Ekspert
09. december 2006 - 15:20 #1
document.getElementById(boxname).checked = (document.getElementById(boxname).checked == true) ? false : true;
Avatar billede skildpadden Nybegynder
09. december 2006 - 15:22 #2
Tak for dit forslag, men det giver desværre samme resultat.
Avatar billede skildpadden Nybegynder
09. december 2006 - 15:24 #3
Måske er der nogen som har et forslag til en hel anden kode som også fungerer i Firefox?

Det eneste den skal kunne, er at ændre en checkbox fra checked til unchecked.
Avatar billede erikjacobsen Ekspert
09. december 2006 - 15:25 #4
Det virker skam i FF.
Avatar billede erikjacobsen Ekspert
09. december 2006 - 15:27 #5
Avatar billede skildpadden Nybegynder
09. december 2006 - 15:28 #6
Jeg bruger den sammen med en <span onclick="toggleCheckbox('boxname'){">Noget tekst</span>
Avatar billede erikjacobsen Ekspert
09. december 2006 - 15:30 #7
Det virker vel også - tjek linket igen
Avatar billede skildpadden Nybegynder
09. december 2006 - 15:32 #8
Det var mærkeligt...

Kan godt se at det fungerer på din side, men ikke på min.

Nå, men tak for hjælpen... vil du lave et svar?
Avatar billede erikjacobsen Ekspert
09. december 2006 - 15:34 #9
Nej tak. Det er ofte en god idé at lave et lille eksempel i den slags tilfælde. HVad siger FF om javascript-fejl i din kode?
Avatar billede skildpadden Nybegynder
09. december 2006 - 15:36 #10
Jeg fandt problemet; Jeg havde bare lavet checkboxen sådan her:

<input type="checkbox" name="minbox" value="ON">

Denne skulle se sådan ud (så fungerer det i hvert fald):

<input type="checkbox" name="minbox" id="minbox" value="ON">
Avatar billede erikjacobsen Ekspert
09. december 2006 - 15:38 #11
Ja, uden en id kan man ikke finde en id.

Du er godt klar over onde Microsofts strategi: Lad os nu hjælpe programmøren med nogle af de fejl han laver. Så vil folk tro at IE er god, og de andre browsere er dårlige, selv om de faktisk følger standarden.  Ik'?

Jeg fatter fortsat ikke at nogen udvikler og aftester på IE først. Det er for mig spild af tid - men heldigvis deres tid ;)
Avatar billede roenving Novice
26. december 2006 - 21:10 #12
-- i øvrigt vil det vel være hensigtsmæssigt ikke at lave to logiske tests, når man kan nøjes med een negering:

<script type="text/javascript">
function toggleCheckbox(boxname){
    box = document.getElementById(boxname);
    box.checked = !box.checked;
}
</script>
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