Avatar billede svelmoe Nybegynder
26. november 2007 - 11:17 Der er 18 kommentarer og
2 løsninger

dynamiske select/text felter2

<script type='text/javascript'>
    var visibleElement;
    function toggleVisibleElement(id){
        if(visibleElement){
            visibleElement.style.display = 'none';
        }
        visibleElement = document.getElementById(id);
        visibleElement.style.display = 'inline';
    }
</script>
    <select size="40" height="10" name="type" onChange="toggleVisibleElement(this.value);">
          <option value=""></option>
            <option id="2" value="Aflægningsbord – Fast">Aflægningsbord – Fast</option>
            <option id="7" value="Aflægningsbord – H/S El">Aflægningsbord – H/S El</option>
            <option id="7" value="Aflægningsbord – H/S Gas">Aflægningsbord – H/S Gas</option> 
            <option id="7" value="Aflægningsbord – H/S Manuel">Aflægningsbord – H/S Manuel</option>
            <option id="2" value="Arkivskab">Arkivskab</option>   
            <option  value="Barstol">Barstol</option>
            <option id="2" value="Brandskab">Brandskab</option>
            <option id="2" value="Brandskab HM">Brandskab HM</option>
            <option id="3" value="Cafebord">Cafebord</option> 
            <option id="2" value="Dueslag">Dueslag</option> 
            <option id="2" value="EDB-bord">EDB-bord</option>
            <option  value="Flipover">Flipover</option>
            <option id="2" value="Fryser">Fryser</option>
            <option id="2" value="Garderobeskab">Garderobeskab</option>
            <option id="4" value="Jalousiskab - Ben">Jalousiskab - Ben</option>
            <option id="4" value="Jalousiskab - Hjul">Jalousiskab - Hjul</option>
            <option id="4" value="Jalousiskab - Sokkel">Jalousiskab - Sokkel</option>
            <option id="2" value="Jalousiskab - Standard">Jalousiskab - Standard</option>
            <option id="2" value="Jalousiskab - Top">Jalousiskab - Top</option>
            <option id="2" value="Jalousiskab - Væg">Jalousiskab - Væg</option>
            <option  value="Kaffeautomat">Kaffeautomat</option>
            <option id="2" value="Kantinebord">Kantinebord</option>
            <option  value="Kantinestol m arm">Kantinestol m arm</option>
            <option  value="Kantinestol u arm">Kantinestol u arm</option>
            <option id="4" value="Klædeskab Sokkel">Klædeskab Sokkel</option>
            <option id="2" value="Klædeskab Standard">Klædeskab Standard</option>
            <option id="2" value="Kommode">Kommode</option>
            <option id="2" value="Kommode HM">Kommode HM</option>
            <option  value="Kontorstol m arm">Kontorstol m arm</option>
            <option  value="Kontorstol u arm">Kontorstol u arm</option>
            <option id="2" value="Kunst">Kunst</option>
            <option id="2" value="Køleskab">Køleskab</option>
            <option  value="Lampe - bord">Lampe - bord</option>
            <option  value="Lampe - gulv">Lampe - gulv</option>
            <option  value="Lampe - loft">Lampe - loft</option>
            <option  value="Lænestol">Lænestol</option>
            <option id="1" value="Lærred">Lærred</option>
            <option id="2" value="Mobilkassette m hjul">Mobilkassette m hjul</option>
            <option id="2" value="Mobilkassette u hjul">Mobilkassette u hjul</option>
              <option id="2" value="Mødebord - Elipse">Mødebord - Elipse</option>
              <option id="3" value="Mødebord - Halvcirkel">Mødebord - Halvcirkel</option>
              <option id="2" value="Mødebord">Mødebord</option>
              <option id="3" value="Mødebord - Rundt">Mødebord - Rundt</option>
              <option  value="Mødestol m arm">Mødestol m arm</option>
              <option  value="Mødestol u arm">Mødestol u arm</option>
              <option id="1" value="Opslagstavle">Opslagstavle</option>
              <option id="2" value="Pengeskab">Pengeskab</option>
              <option id="4" value="Reol - ben">Reol - ben</option>
              <option id="4" value="Reol - hjul">Reol - hjul</option>
              <option id="4" value="Reol - sokkel">Reol - sokkel</option>
              <option id="2" value="Reol - standard">Reol - standard</option>
              <option id="2" value="Reol - top">Reol - top</option>
              <option id="2" value="Reol - væg">Reol - væg</option>
              <option id="2" value="Sagsvogn">Sagsvogn</option>
              <option  value="Skammel">Skammel</option>
              <option id="1" value="Skillevæg">Skillevæg</option>
              <option id="2" value="Skranke">Skranke</option>
              <option id="5" value="Skrivebord - Fast">Skrivebord - Fast</option>
              <option id="6" value="Skrivebord - H/S El">Skrivebord - H/S El</option>
              <option id="6" value="Skrivebord - H/S Gas">Skrivebord - H/S Gas</option>
              <option id="6" value="Skrivebord - H/S Manuel">Skrivebord - H/S Manuel</option>
              <option id="2" value="Sofa">Sofa</option>
              <option id="2" value="Sofabord">Sofabord</option>
              <option id="2" value="Stigereol">Stigereol</option>
              <option  value="Stumtjener">Stumtjener</option>
              <option id="2" value="Stålskab">Stålskab</option>
              <option id="2" value="Stålskab HM">Stålskab HM</option>
              <option id="2" value="Tegningsskab">Tegningsskab</option>
              <option  value="Vandautomat">Vandautomat</option>
              <option id="1" value="Whiteboard">Whiteboard</option>
             
          </select>
</td>
          <td width="10%" align="left" valign="top"><select size="40" height="10" name="overflade">
          <option value=""></option>
            <option value="Ahorn">Ahorn</option>
            <option value="B&oslash;g">B&oslash;g</option>
            <option value="Eg">Eg</option>
            <option value="Valn&oslash;d">Valn&oslash;d</option>
            <option value="Kirseb&aelig;r">Kirseb&aelig;r</option>
            <option value="Mahogni">Mahogni</option>
            <option value="Glas">Glas</option>
            <option value="R&oslash;d">R&oslash;d</option>
            <option value="Bl&aring;">Bl&aring;</option>
            <option value="Gr&oslash;n">Gr&oslash;n</option>
            <option value="Gul">Gul</option>
            <option value="Brun">Brun</option>
            <option value="Sort">Sort</option>
            <option value="Lys r&oslash;d">Lys r&oslash;d</option>
            <option value="Lys bl&aring;">Lys bl&aring;</option>
            <option value="Lys gr&oslash;n">Lys gr&oslash;n</option>
            <option value="Lys gul">Lys gul</option>
            <option value="L&aelig;der - Sort">L&aelig;der - Sort</option>
            <option value="L&aelig;der - Hvid">L&aelig;der - Hvid</option>
            <option value="L&aelig;der - R&oslash;d">L&aelig;der - R&oslash;d</option>
            <option value="L&aelig;der - Brun">L&aelig;der - Brun</option>
            <option value="Plastic - Hvid">Plastic - Hvid</option>
            <option value="Plastic - Sort">Plastic - Sort</option>
            <option value="Plastic - R&oslash;d">Plastic - R&oslash;d</option>
            <option value="Plastic - Bl&aring;">Plastic - Bl&aring;</option>
            <option value="Plastic - Gr&oslash;n">Plastic - Gr&oslash;n</option>
            <option value="Plastic - Gul">Plastic - Gul</option>
            <option value="Stof - Sort">Stof - Sort</option>
            <option value="Stof - Hvid">Stof - Hvid</option>
            <option value="Stof - R&oslash;d">Stof - R&oslash;d</option>
            <option value="Stof - Bl&aring;">Stof - Bl&aring;</option>
            <option value="Stof - Gul">Stof - Gul</option>
           
          </select></td>
          <td width="12%" align="left" valign="top">
       
       
<span id='1' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
        Højde:<br /><input type="text" name="hoejde">
            </span>


<span id='2' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
    Dybde:<br /><input type="text" name="dybde_min"><br />
        Højde:<br /><input type="text" name="hoejde">
</span>

<span id='3' style='display: none;'>
        Diameter:<br /><input type="text" name="diameter"><br />
        Højde:<br /><input type="text" name="hoejde">
</span>

<span id='4' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
        Dybde:<br /><input type="text" name="dybde_min"><br />
        Højde:<br /><input type="text" name="hoejde">
        Sokkel:<br /><input type="text" name="sokkel">
</span>

<span id='5' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
        Dybde min:<br /><input type="text" name="dybde_min"><br />
        Dybde max:<br /><input type="text" name="dybde_max"><br />
        Højde:<br /><input type="text" name="hoejde">
</span>

<span id='6' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
        Dybde min:<br /><input type="text" name="dybde_min"><br />
        Dybde max:<br /><input type="text" name="dybde_max"><br />
</span>

<span id='7' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
        Dybde:<br /><input type="text" name="dybde_min"><br />
</span>

hvad er problemet?

"der opstod en fejl på siden"
Avatar billede Slettet bruger
26. november 2007 - 11:58 #1
Du skal bruge value som id bærende attribut:

<option id="2" value="Aflægningsbord – Fast">Aflægningsbord – Fast</option>
ændres til
<option value="2">Aflægningsbord – Fast</option>

/1
Avatar billede svelmoe Nybegynder
26. november 2007 - 12:05 #2
jeg skal jo bruge value til databasen.
Avatar billede svelmoe Nybegynder
26. november 2007 - 13:33 #3
så er der ikke en anden måde?
Avatar billede w13 Novice
26. november 2007 - 15:37 #4
Du må i hvert fald kun bruge et id én gang, men lige nu har du f.eks. id="2" 33 gange. Så er det klart, den ikke kan finde ud af det.
Avatar billede roenving Novice
26. november 2007 - 16:52 #5
-- en anden metode er at bruge flere values i value adskilt af et tegn, som ikke ellers kan forekomme, men ikke giver problemer i hverken html eller javascript, f.eks. ¤, # eller | og så splitte på den værdi i funktionen og i din database-opdatering !-)

-- og så _skal_ et id starte på et bogstav (a-z) eller _ (underscore), tal er illegale som første tegn ...

-- så f.eks.

    function toggleVisibleElement(val){
        if(visibleElement){
            visibleElement.style.display = 'none';
        }
        visibleElement = document.getElementById('opt' + val.split("#")[1];
        visibleElement.style.display = 'inline';
    }

...

            <option value="Aflægningsbord – Fast#2">Aflægningsbord – Fast</option>

-- og:

<span id='opt2' style='display: none;'>
Avatar billede svelmoe Nybegynder
27. november 2007 - 11:06 #6
nu er det som ovenstående, men får stadig en fejl og der sker ikke noget.. mangler der ikke en ")" i din function et sted :)?
Avatar billede svelmoe Nybegynder
27. november 2007 - 11:08 #7
skal <script type='text/javascript'>
    var visibleElement;
    function toggleVisibleElement(id){
        if(visibleElement){
            visibleElement.style.display = 'none';
        }
        visibleElement = document.getElementById(id);
        visibleElement.style.display = 'inline';
    }
</script>
med? det giver også fejl :)
Avatar billede svelmoe Nybegynder
27. november 2007 - 11:11 #8
koden som den er nu:
<script type='text/javascript'>
    var visibleElement;
    function toggleVisibleElement(val){
        if(visibleElement){
            visibleElement.style.display = 'none';
        }
        visibleElement = document.getElementById('opt' + val.split("#")[1];
        visibleElement.style.display = 'inline';}
</script>
    <select size="40" height="10" name="type" onChange="toggleVisibleElement(this.value);">
---

          <option value=""></option>
            <option value="Aflægningsbord – Fast#2">Aflægningsbord – Fast</option>

---

<span id='opt1' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
        Højde:<br /><input type="text" name="hoejde">
            </span>
Avatar billede svelmoe Nybegynder
27. november 2007 - 12:57 #9
Linje: 45
Tegn: 1
Fejl: Et objekt var ventet
Kode: 0

hvis det hjælper :)

på forhånd tak
Avatar billede w13 Novice
27. november 2007 - 14:10 #10
visibleElement = document.getElementById('opt' + val.split("#")[1];
i Roenvings funktion skal være:
visibleElement = document.getElementById('opt' + val.split("#")[1]);

og hans funktion skal erstatte din allerede eksisterende.
Avatar billede svelmoe Nybegynder
27. november 2007 - 15:08 #11
det virker ikke.

<script type='text/javascript'>
    var visibleElement;
    function toggleVisibleElement(val){
        if(visibleElement){
            visibleElement.style.display = 'none';
        }
        visibleElement = document.getElementById('opt' + val.split("#")[1]);
        visibleElement.style.display = 'inline';}
</script>
--

select size="27" height="10" name="type" onChange="toggleVisibleElement();">
        <option value=""></option>
            <option value="Aflægningsbord – Fast#2">Aflægningsbord – Fast</option>

--

span id='opt2' style='display: none;'>
    Bredde:<br /><input type="text" name="bredde"><br />
    Dybde:<br /><input type="text" name="dybde_min"><br />
        Højde:<br /><input type="text" name="hoejde">
</span>
Avatar billede roenving Novice
27. november 2007 - 16:57 #12
Du mangler også at overføre værdien:

select size="27" height="10" name="type" onChange="toggleVisibleElement(this.value);">
Avatar billede svelmoe Nybegynder
28. november 2007 - 10:46 #13
perfekt. en af jer der ved hvordan jeg hakker alt efter # væk igen inden jeg indsætter i db?

så Aflægningsbord – Fast#2 bliver til Aflægningsbord – Fast i db...

ellers er i velkomne til at lægge et svar :)

jeg siger mange tak!
Avatar billede w13 Novice
28. november 2007 - 14:33 #14
Det afhænger vel af det serversidesprog, du bruger til at gemme i databasen.
Avatar billede svelmoe Nybegynder
28. november 2007 - 14:55 #15
ja det er php/mysql. det var bare lige hvis i kendte en løsning.

jeg er faktisk stødt på et nyt problem  med hensyn til noget .js/php ved ikke om jeg skal oprette et nyt spm, eller i gider kigge på det?
Avatar billede w13 Novice
28. november 2007 - 15:02 #16
Jeg kender mest til ASP, så jeg kan nok ikke lige stykke en løsning sammen på problem#1.

Mht. problem#2 bør du nok oprette et nyt spørgsmål for god ordens skyld.
Avatar billede svelmoe Nybegynder
28. november 2007 - 15:18 #17
okay :)

så vil jeg gerne bede jer om at ligge et svar...
Avatar billede w13 Novice
28. november 2007 - 15:19 #18
Oki.
Avatar billede roenving Novice
28. november 2007 - 16:14 #19
I php kan du også bruge split, og der er det mere direkte, slå selv syntaksen op !-)

Velbekomme '-)
Avatar billede roenving Novice
29. november 2007 - 16:06 #20
-- og tak for point ;~}
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