20. april 2004 - 11:35
Der er
20 kommentarer og 1 løsning
Radio buttons valg
Hejsa, Er det muligt i en formular hvor jeg har nogle radio buttons at lave det således at der afhængigt af hvilken radio button der er valgt får vist forskellige eller kun nogle tekst felter længere nede i samme formular ? Og hvis er der så nogle der har e eksempel på dette ? /websam
Annonceindlæg fra HP
20. april 2004 - 11:44
#1
Det nemmeste vil være at have _alle_ felter skjult og i blokke, og så vise det, som passer til radio-knapperne: <input type="radio" name="dele" onclick="document.getElementById('del1').style.display='block'"> <input type="radio" name="dele" onclick="document.getElementById('del2').style.display='block'"> <div id="del1" style="display:none;"> Karl 1: <input type="text"><br> Karl 2: <input type="text"><br> Karl 3: <input type="text"><br> </div> <div id="del2" style="display:none;"> Karl 4: <input type="text"><br> Karl 5: <input type="text"><br> Karl 6: <input type="text"><br> </div>
20. april 2004 - 11:50
#2
Og det vil jo så sige at jeg kan nøjes med at skjule de felter som der kan være forskel på !?! /websam
20. april 2004 - 12:00
#3
Ja, og hvis du godt vil have at brugere kan fortryde/vælge noget andet skal der en lille funktion til, som gemmer resten !-)
20. april 2004 - 12:09
#4
Og er det en funktion du kan lave ? Jeg er totalt ny i JavaScript :o) /Websam
20. april 2004 - 12:15
#5
<script type="text/javascript"> function visDel(id){ divs = document.getElementsByTagName('DIV'); for(i=0;divs.length>i;i++){ if(divs[i].id.indexOf('del')==0) divs[i].style.display = (divs.id==id)?'block':'none'; } } </script> <input type="radio" name="dele" onclick="visDel('del1');"> -- og så skal alle de divs, som indeholder skjulbare dele af formen have et id, som starter med 'del' ...
20. april 2004 - 12:25
#6
Hvis det skal være på denne måde så virker det ikke : <input type="radio" value="4" name="R1" onclick="visDel('del1');"> <div id="del1" style="display:none;"> eller mangler jeg noget ? /Websam
20. april 2004 - 12:32
#7
Hvad får du af fejl ?-) Øv, jeg havde (igen !-) glemt [i] ... divs[i].style.display = (divs[i].id==id)?'block':'none';
20. april 2004 - 12:35
#8
ok jeg får ingen fejl men her kommer min kode : <script type="text/javascript"> function visDel(id){ divs = document.getElementsByTagName('DIV'); for(i=0;divs.length>i;i++){ if(divs[i].id.indexOf('del')==0) divs[i].style.display = (divs.id==id)?'block':'none'; } } </script> <form method="POST" action="Action.asp"> <table border="0" style="border-collapse: collapse" width="100%" id="table1" cellpadding="0"> <tr> <td colspan="4">Vælg den type bordplade du ønsker.<br> </td> </tr> <tr> <td>Standart Model</td> <td>Center Model</td> <td>Venstre Model</td> <td>Højre Model</td> </tr> <tr> <td><img border="0" src="Graphic/Base.jpg" width="100" height="70"></td> <td><img border="0" src="Graphic/Center.jpg" width="100" height="70"></td> <td><img border="0" src="Graphic/Left.jpg" width="100" height="70"></td> <td><img border="0" src="Graphic/Right.jpg" width="100" height="70"></td> </tr> <tr> <td><input type="radio" value="1" name="R1" onclick="visDel('del1');" checked></td> <td><input type="radio" value="2" name="R1" onclick="visDel('del2');"></td> <td><input type="radio" value="3" name="R1" onclick="visDel('del2');"></td> <td><input type="radio" value="4" name="R1" onclick="visDel('del2');"></td> </tr> <tr> <td colspan="4"><br> Indtast de ønskede mål på bordpladen.<br> </td> </tr> <tr> <td colspan="4"> <table border="0" style="border-collapse: collapse" width="100%" id="table2" cellpadding="0"> <tr> <td>Længde</td> <td>Brede</td> <td>Hjørne Radius</div></td> <td> <div id="del1" style="display:block;">Bord Radius</div> <div id="del2" style="display:none;">Bord Radius</div> </td> </tr> <tr> <td><input type="text" name="Length" size="10"></td> <td><input type="text" name="Width" size="10"></td> <td><input type="text" name="Corner" size="10"></td> <td> <div id="del1" style="display:block;"><input type="text" name="Radius" size="10"></div> <div id="del2" style="display:none;"><input type="text" name="Radius" size="10"></div> </td> </tr> </table> </td> </tr> </table> <input type="submit" value="Lav Tegning"> </form> der sker bare ikke noget når jeg skifter radio button /websam
20. april 2004 - 13:00
#9
Nej, udskift den linje, jeg rettede ...
20. april 2004 - 13:16
#10
det har jeg gjort og det hjalp ikke
20. april 2004 - 13:28
#11
Jeg gættede ikke på, at du ville prøve med flere ting med samme id ... Ligesom id er unikt til person-identifikation skal id til element-identifikation også være unikt ... -- og lige nu er det faktisk sådan, at du ikke ser forskellen, men det virker på trods af, at du har lavet id-fejlen !-) -- prøv at sætte et og to ind i diverne !o]
20. april 2004 - 13:40
#12
Ok så er det nok mig der er tabt bag vognen men jeg har da sat del1 i den ene div og del2 i den anden div eller fatter jeg ikke en klap *GGG*
20. april 2004 - 13:46
#13
Hvis du sætter tallene 1 og to ind bag f.eks. Bord Radius1 og Bord Radius2 kan du se at det virker ... Men når du sætter præcis det samme ind, kan du ikke se, at der er en forskel ...
20. april 2004 - 13:53
#14
Hvis jeg går det står der Bord Radius 1 uanset hvilken radio jeg vælger ?!?
20. april 2004 - 13:55
#15
Sorry min fejl den skifter mellem Bord Radius 1 og Bord Radius 2 men hvorfor forsvinder de så ikke det er nok der jeg taber tråden og ikke fatter en klap :o)
20. april 2004 - 14:20
#16
Hvis du så vil have den til at forsvinde fuldstændigt, kan du: <td><input type="radio" value="4" name="R1" onclick="visDel('');"></td>
20. april 2004 - 14:23
#17
Ja men det skal jo stadig være afhængigt af hvilken radio button der er valgt !?! Der ender nok op med t jeg laver to formulare istedet det gør det hele dejligt nemt :o) /Websam
20. april 2004 - 14:33
#18
Uden noget vil den skjule alle, med noget i vil den vise dem, som svarer til ... Det kan du ændre i det uendelige !-)
20. april 2004 - 14:38
#19
ok smid et svar jeg fndt ud af langt om længe :o) /websam
20. april 2004 - 14:41
#20
Velbekomme '-)
20. april 2004 - 14:44
#21
-- og tak for point ;~}
Vi tilbyder markedets bedste kurser inden for webudvikling