Avatar billede nemlig Professor
15. december 2007 - 19:06 Der er 13 kommentarer og
1 løsning

Hvordan markes en check-boks

Hej.
Jeg har en html-input formular, hvor jeg via en javascript søg-funktion kan hente nogle data og smide dem direkte i input-felterne. Det virker fint på alle input-felter, men jeg har også en input-checkbox.
Hvordan sætter jeg kryds i checkboksen.
Avatar billede erikjacobsen Ekspert
15. december 2007 - 19:13 #1
Skitse:

  <script type="text/javascript">
    function f() {
      document.getElementById("q").checked=true;
    }
  </script>

  <input type="checkbox" id="q">  <button onclick="f()">
Avatar billede nemlig Professor
15. december 2007 - 19:26 #2
Synes ikke det virker. Mit script ser sådan her ud:
Og det er den nederste linje, hvor jeg sættet "checkboxen".

<script type="text/javascript">
        function refreshParent(myName,myAddress1,myAddress2,myTlf1,myTlf2,myEmail,myPostnr,myBynavn,myFormaal,myEan,myEanKontakt,myElektronisk)
        {
            window.opener.document.getElementById('myName').value      = myName;
            window.opener.document.getElementById('myAddress1').value  = myAddress1;
            window.opener.document.getElementById('myAddress2').value  = myAddress2;
            window.opener.document.getElementById('myTlf1').value      = myTlf1;
            window.opener.document.getElementById('myTlf2').value      = myTlf2;
            window.opener.document.getElementById('myEmail').value      = myEmail;
            window.opener.document.getElementById('myPostnr').value    = myPostnr;
            window.opener.document.getElementById('myBynavn').value    = myBynavn;
            window.opener.document.getElementById('myFormaal').value    = myFormaal;
            window.opener.document.getElementById('myEan').value        = myEan;
            window.opener.document.getElementById('myEanKontakt').value = myEanKontakt;
            window.opener.document.getElementById('myElektronisk').checked=true;
            }
    </script>
Avatar billede jhe-ting Nybegynder
15. december 2007 - 20:59 #3
Har check-box'en en id="myElektronisk"?
Hvordan ser din HTML ud til din form og felterne?
Avatar billede nemlig Professor
15. december 2007 - 21:10 #4
ja - den har jeg sat: Koden ser sådan her ud:

<input type='checkbox' id='myElektronisk' name='elektronisk' value='1' ";
                    if(getSavedForm('elektronisk') == 1)
                    {
                    echo 'checked="checked"';
                    }
                    echo ">
Avatar billede erikjacobsen Ekspert
15. december 2007 - 23:04 #5
I hvilken betydning: "Synes ikke det virker."
Avatar billede olebole Juniormester
17. december 2007 - 15:24 #6
<ole>

Jeg tilslutter mig Erik. Hvad mener du med 'Synes ikke det virker'?

Hvad skulle koden (15/12-2007 21:10:53) kunne gøre?

/mvh
</bole>
Avatar billede erikjacobsen Ekspert
17. december 2007 - 15:44 #7
Kryds i kalenderen: Ole er enig med mig...

Det der, der ikke synes at virke, kan måske-muligvis skyldes at i koden fra 15/12-2007 19:26:15 sættes checked-attributten altid til true (sikkert taget fra min skitse), selv om der er en parameter i funktion i refreshParent, der muligvis-måske skulle bruges i stedet for.
Avatar billede olebole Juniormester
17. december 2007 - 15:54 #8
Erik >> Krydser du af hvergang, det er tilfældet, kan du da snart ikke se kalenderen for bare blæk  :)
Avatar billede nemlig Professor
17. december 2007 - 16:54 #9
Meningen er, at javascriptet skal sætte et "kryds" i checkboxen - og det gør den ikke.

Formularen virker på den måde, at den enten kan udfyldes manuelt, eller der kan hentes eksisterende data fra en anden tabel. Hvis der hentes fra en anden tabel, så er ovennævnte java-script i spil. Og der er her jeg gerne vil have sat et kryds i checkboxen. Udfyldning af alle text-felter virker, som det skal.

Når formularen er udfyldt (enten manuel indtastning eller hentet fra anden tabel), trykkes submit. Herefter foretages nogle php-kontroller, og hvis "fejl-indtastninger", så er funktionen "getSavedForm" med til, værdierne i input-felterne ikke skal indtastes forfra.
Avatar billede jhe-ting Nybegynder
19. december 2007 - 02:13 #10
Du overfører parameteren 'myElektronisk' til funktionen 'refreshParent', men sætter hver gang

  window.opener.document.getElementById('myElektronisk').checked = true;

Er det dét der er problemet, eller er det bare en midlertidig test, for at fremtvinge en afkrydsning (uden held)?
Avatar billede jhe-ting Nybegynder
19. december 2007 - 02:16 #11
Kan du validere din kode hos

  http://validator.w3.org/

Hvis der er flere elementer med samme 'id' kan det gå galt.
Avatar billede nemlig Professor
06. januar 2008 - 12:24 #12
Hej. Jeg har fået det til at virke. Send lige et svar - så fordeler jeg pointene. Tak for bidragene.
Avatar billede erikjacobsen Ekspert
06. januar 2008 - 16:02 #13
Ingen piotns til mig, tak.
Avatar billede jhe-ting Nybegynder
06. januar 2008 - 18:03 #14
Jeg har ikke råd til at købe pro-abb., så jeg kan godt bruge en lille klat... :P

PS: Skriv gerne hvad der løste dit problem ...
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