Avatar billede slughead Nybegynder
16. januar 2008 - 10:46 Der er 10 kommentarer og
1 løsning

Style på et div tag

Hey.

2 problemer:

Jeg har x antal elementer (inputs og selects primært) indrammet i et div tag.

<div style="display:none;" id="HouseOnly>

elem 1
elem 2
...
elem x

</div>

Elementerne bliver stadig vist - det er meningen de ikke skal vises (på dette tidspunkt). Dette er problem 1.

Ved ændring af værdien på en select, skal div'en så vises.
Dette har jeg gjort således:

<select name="Husstand" onChange="HusstandValgt(document.HomeInsForm)">
  option 1
  option 2
  ...
</select>

i mit javascript har jeg så skrevet:

function HusstandValgt(form) {
  var husstand;
  husstand = form.elements['Husstand'].value;

  if (Husstand == 2)
    document.getElementById("HouseOnly").style.display = "auto";
  else
    document.getElementById("HouseOnly").style.display = "none";
}

Når jeg så trigger eventen sker der intet. Dette er problem 2.

Nogen forslag?
Avatar billede slughead Nybegynder
16. januar 2008 - 10:48 #1
I javascriptet har jeg prøvet at skrive variablen husstand ud med document.write(). Denne bliver 1, 2 eller -1, som values i mine options er, så dette virker.
Avatar billede slughead Nybegynder
16. januar 2008 - 10:51 #2
kunne evt. prøve med visibility i stedet for display, men jeg har brugt display før, hvor det virkede - fatter ikke helt, hvorfor dette ikke gør ^^
Avatar billede thomas_yde Nybegynder
16. januar 2008 - 11:13 #3
hvis det er ren copypaste så mangler du en " ved dit div tag.
<div style="display:none;" id="HouseOnly>
<div style="display:none;" id="HouseOnly">
Avatar billede slughead Nybegynder
16. januar 2008 - 11:16 #4
det er på en anden computer, så det er ikke copy-paste, jeg har lige kigget, jeg har ikke lavet en typ0 i koden - kun her :)
Udover dette, har jeg lige prøvet at sætte style="visibility:hidden;" i stedet for display, dette gør heller ingenting.
Er der noget bestemt, man skal gøre, for at få skjult disse tags, udover det, jeg prøver?
Ved ikke, om det har noget at sige, at det er ASP. Det burde da ikke have noget at sige...
Avatar billede thomas_yde Nybegynder
16. januar 2008 - 11:45 #5
Du kan måske lege lidt med det her:
<html>
<head>

<script type="text/javascript" language="JavaScript1.2">
    function getE(id){
        return document.getElementById(id);
    }
   
    function HusstandValgt(selValue){   
        if(selValue=="2"){
            getE('HouseOnly').style.display = "block";
        }
        else{
            getE('HouseOnly').style.display = "none";
        }
       
    }
</script>
</head>
<body>

<div style="display:none;" id="HouseOnly">
<h3>element1</h3>
<h3>element2</h3>
<h3>element3</h3>
<h3>element4</h3>
<h3>....</h3>
<h3>elementX</h3>
</div>

<select onChange="HusstandValgt(this.value);">
    <Option value="1">1</Option>
    <Option value="2">2</Option>
</select>
</body>
</html>
Avatar billede slughead Nybegynder
16. januar 2008 - 12:05 #6
tja, det er basalt set bare en nemmere måde at gøre det samme på.

Det gør i hvert fald ingen forskel
Avatar billede thomas_yde Nybegynder
16. januar 2008 - 12:19 #7
Så vil jeg næsten sige det er noget andet der spiller ind. Så måske skal du prøve at skille tingene ad og se om det hele bliver printet fint ud og debugge lidt med nogle alert() i koden for at se hvorlangt du kommer.
Avatar billede slughead Nybegynder
16. januar 2008 - 12:52 #8
Har jeg også overvejet. :)
Dog har jeg fået at vide, jeg skal lave noget andet nu (folk hunser med mig!), så det må blive en anden gang, og af ren interesse.
Jeg vil umiddelbart mene, at både min egen kode samt din, Thomas er korrekt, så jeg vil lade dig få pointene. Lav et svar :)
Avatar billede thomas_yde Nybegynder
16. januar 2008 - 13:01 #9
Det vil jeg så gøre. :)

Held og lykke med det. Interesse er en god ting, det bliver man kun klogere af.
Avatar billede slughead Nybegynder
16. januar 2008 - 13:27 #10
præcis :P
Avatar billede slughead Nybegynder
16. januar 2008 - 13:27 #11
og tak for hjælpen ellers :)
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