Avatar billede Morten Nybegynder
26. februar 2007 - 17:13 Der er 7 kommentarer og
1 løsning

skjule div via checkbox

Hej

Jeg har lavet et par checkboxe og kan godt ved at klikke på dem få min div til at skjule sig MEN der kommer ikke noget flueben i checkboxen - Hvorfor ikke:

Her er scriptet som ligger i OnClick på checkboxen:

"document.getElementById('www_hide').style.visibility=(vist)?'hidden':'visible';vist=!vist;return false;"

ved minus og JavaScript - sååååå...

Morten
Avatar billede mm12010 Nybegynder
26. februar 2007 - 17:39 #1
det er fordi slutter dit script med "return false;", som annullere den handling der har kaldt dit event, i dette tilfælde onclick som jo normalt sætter fluebenet i din checkbox - derfor skal det bare fjernes så der kommer til at stå:

"document.getElementById('www_hide').style.visibility=(vist)?'hidden':'visible';vist=!vist;"
Avatar billede Morten Nybegynder
26. februar 2007 - 17:51 #2
Hmmmm, hvor svært var det lige LOL - kan jeg ikke lige komme med et tillægs spørgsmål?

Jeg vil gerne have at den er skjult når man kommer ind på siden - men det vil den ikke har følgende lige efter body tag:
<script type="text/javascript">var vist=true</script>

Prøvede at ændre den til falsk (false) men hjælp ikke - man skal klikke og klikke af så forsvinder den? (undskyld er total dummie til Javascripting...)
Avatar billede crazysnap Seniormester
26. februar 2007 - 20:49 #3
Hej cddk,

Du skal bare proppe en style="visibility: hidden;" på dit div tag hvis den skal starte ud med at være usynlig. Du kan fjerne brugen af "vist" variablen helt hvis du ændrer

onclick="document.getElementById('www_hide').style.visibility=(vist)?'hidden':'visible';vist=!vist;"

til:

onclick="document.getElementById('www_hide').style.visibility=this.checked?'visible':'hidden';"


Så for at vise dig et eksempel med det hele i brug:

<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    </head>
    <body>
        <table>
            <tr>
                <td>
                    <input type="checkbox" value="Show/Hide below div" onclick="document.getElementById('www_hide').style.visibility=this.checked?'visible':'hidden';"/>
                </td>
            </tr>
            <tr>
                <td>
                    <div id="www_hide" style="visibility: hidden;">
                        This is the div to be hidden
                    </div>
                </td>
            </tr>
        </table>
    </body>
</html>


Håber det løste dit sidste problem! :)


Mvh.

- Snap
Avatar billede Morten Nybegynder
26. februar 2007 - 22:30 #4
Hej Snap

Kig venligst på http://www.eksperten.dk/spm/764849  - lig et svar (gerne med en løsning hvis det er noget du kan) så får du nogle af pointene derfra, som tak for hjælpen.
Avatar billede Morten Nybegynder
26. februar 2007 - 22:31 #5
... øhh ville have takket for hjælpen... Tak!
Avatar billede Morten Nybegynder
26. februar 2007 - 22:40 #6
Kan man ikke skjule det helt - den laver "hul" ?
Avatar billede crazysnap Seniormester
26. februar 2007 - 23:33 #7
Hej igen, :)


Jeg går ud fra du mener at den ikke "collapser" den celle <div>-tag'en er i når den er hidden. Hvis du vil have at den collapser kan du bruge 'display' i stedet for 'visibility'. Jeg har lavet eksemplet til dig nedenfor:  :)



<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
    </head>
    <body>
        <table style="background-color: ButtonFace; height: 100%;">
            <tr>
                <td>
                    <input type="checkbox" onclick="document.getElementById('www_hide').style.display=this.checked?'block':'none';" />
                    Show/Hide div tag
                </td>
            </tr>
            <tr>
                <td>
                    <div id="www_hide" style="display:none; border: solid 1px gray; width: 200px; height: 40px; text-align: center;">
                        This is the div to be hidden
                    </div>
                </td>
            </tr>
            <tr>
                <td style="height: 100%;">
                    Lidt tekst i bunden
                </td>
            </tr>
        </table>
    </body>
</html>



Håber det var det du mente med "hul".


Mvh.

- Snap


ps. Jeg kigger lige på http://www.eksperten.dk/spm/764849 og ser om jeg kan hjælpe. :)
Avatar billede Morten Nybegynder
26. februar 2007 - 23:44 #8
Jamen det er jo fantastisk...!! Jeg bliver vist nød til at lære JavaScript, kan du anbefale noget litteratur - er vant til at kode i PHP...
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