webForumDet fria alternativet

koden fungerar inte i netscape

JavaScriptur Javascript

10 svar · 332 visningar · startad av nille99

Medlem sedan aug. 2002352 inlägg
Frågan#1

jag har en rullningslista med två alternativ
Den har två värden ja och nej
när alternativet nej är framme så syns text samt en textruta
när alternativet ja så är båda gömda

Jag har fått det att fungera i explorer, men varken i Mozilla eller Netscape får jag det att fungera

min kod på rullningslista är


select id=select47 name=Samma class="listrutor" onChange="if(this.options.value=='Nej')TSamma.style.visibility='';else TSamma.style.visibility='hidden';if(this.options.value=='Nej')ASamma.style.visibility='';else ASamma.style.visibility='hidden'">
Medlem sedan juni 20004 308 inlägg
#2

Är inte riktigt säker på hur du vill ha det, men här är ett exempel;

<form>
<select id="select47" name="Samma" class="listrutor" onChange="document.getElementById('TSamma').style.display=(this.selectedIndex==0)?'none':'inline'; document.getElementById('ASamma').style.display=(this.selectedIndex==0)?'none':'inline';">
<option value="Ja">Ja</option>
<option value="Nej">Nej</option>
</select><br>
<input name="foo" id="TSamma" style="display:none;">
<textarea name="bar" id="ASamma" style="display:none;"></textarea>
</form>

Fungerar i IE, Mozilla och Netscape 6. Netscape 4 kan inte rendera om sidan efter det att den är laddad så där måste du arbeta med lager, och skall du ha delar av ett formulär i lager som du skall kunna gömma måste du använda 2 formulär där du hela tiden kopierar data mellan dem när man ändrar något värde. Lite bökigare alltså.

Medlem sedan aug. 2002352 inlägg
#3

Det fungerade
hur ska jag skriva om jag vill att dom ska gömmas från början

<input name="foo" id="TSamma" style="display:none;">

vad ska värde display va på om det ska gömmas

Medlem sedan aug. 2002352 inlägg
#4

hur skriver jag om jag har flera alternativ?
ja, nej, kanske, vet inte

Medlem sedan juni 20004 308 inlägg
#5

Det fungerade
hur ska jag skriva om jag vill att dom ska gömmas från början

<input name="foo" id="TSamma" style="display:none;">

vad ska värde display va på om det ska gömmas

Ovanstående skall vara gömt från början. Motsatsen till none kan vara "inline" eller "block". Se CSS - display

hur skriver jag om jag har flera alternativ?
ja, nej, kanske, vet inte

Skall då även text-rutorna "kanske" visas eller? :e I exemplet används detta för varje objekt som skall visas/gömmas;

document.getElementById('element_id').style.display=(this.selectedIndex==0)?'none':'inline';

Där "element_id" är ID på det element som skall påverkas. Det som bestämmer ifall elementet skall visas är i detta fall listan och ifall första valet (index 0) - värdet växlar mellan "none" och "inline".

Medlem sedan aug. 2002352 inlägg
#6

om jag har fyra alternativ och bara vill att sista ska gömmas
ska jag ändra index värd till 4 eller
ska jag

'none':'none':'none':'inline';
Medlem sedan aug. 2002352 inlägg
#7

jag fick det att fungera

document.getElementById('element_id').style.display=(this.selectedIndex==3)?'inline':'none';
Medlem sedan aug. 2002352 inlägg
#8

En kort fråga

Jag vill ha samma resultat på två olika alternativ från listrutan
kan man skriva
eller något liknaden

this.selectedIndex==1 and 3)

eller måste man skriva
(jag får problem med att skriva så långa kod)

document.getElementById('element_id').style.display=(this.selectedIndex==1)?'inline':'none'; 
document.getElementById('element_id').style.display=(this.selectedIndex==3)?'inline':'none';
Medlem sedan juni 20004 308 inlägg
#9

Inte and eftersom selectedIndex (valt listpost) inte kan vara 2 samtidigt, det är or vi söker, och operatorn för det i JavaScript är ||

Alltså;

document.getElementById('element_id').style.display=(this.selectedIndex==1||this.selectedIndex==3)?'inline':'none';
Medlem sedan aug. 2002352 inlägg
#10

Jag har 20 olika document.getElementById
med || har jag fått ner till 12 st document.getElementById
men endå så får jag inte allt att visa sig på sidan

Är kodraden för lång?
kan man ha samma id namn för olika listrutor,text mm?

Medlem sedan juni 20014 421 inlägg
#11

Nej ett id är väl unikt har jag för mej. Men du kan ha samma klass för olika saker.

141 ms totalt · 3 externa anrop · v20260731065814-full.b746b907
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
138 ms — hämta tråd, inlägg och bilagor (db)