webForumDet fria alternativet

Dölj / Visa Formulärsfält

5 svar · 450 visningar · startad av MickeA.com

MickeA.comMedlem sedan feb. 20034 441 inlägg
#1

Tja!

Nu har jag sökt på det här och hittat en rad olika trådar. Problemet är att jag får lepra av alla olika svar och får inte ihop något som passar mig och mitt problem.

Jag har tre radioknappar: "Ja1", "Ja2" & "Nej". Som Default är "Nej" valt.

Jag vill nu att när "Nej" är valt ska en <select> samt en <textarea> vara disbled, de ska synas, men vara oanvändbara.
När "Ja1" är valt, ska <textarea> vara disabled, men <select> ska gå att använda.
Slutligen när "Ja2" är valt, ska <select> var disabled, medan <textarea> ska gå att använda.

Såhär ser hela mitt formulär ut:

<tr style="background-color: #DDDFFF;">
	<td class="text" style="width: 250px;">Fanns Anm.?</td>
	<td class="text">
	<input type="radio" style="background-color: #DDDFFF; border: 0px;" name="strAnm">Ja, Snabbval&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
		<input type="radio" style="background-color: #DDDFFF; border: 0px;" name="strAnm">Ja, Fyll I&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
			<input type="radio" style="background-color: #DDDFFF; border: 0px;" name="strAnm" checked>Nej
	</td>
	</tr>
	<tr>
	<td style="height: 2px;" colspan="2"><img src="pics/spacer.gif" style="border: 0px;" alt=""></td>
	</tr>
	<tr>
	<td class="text" style="width: 250px;">Snabbval</td>
	<td class="text">
	<select name="strAnm_Select" style="width: 305px; border: 1px #000000 solid; background-color: #E7E8FF;">
	<option>Välj</option>
	<option value="s_lampa_saknas">Sladdlampa Saknas</option>
	<option value="s_bel_defekt">Schaktbelysning Defekt</option>
	<option value="m_bel_defekt">Maskinrumsbelysning Defekt</option>
	</select>
	</td>
	</tr>
	<tr>
	<td style="height: 2px;" colspan="2"><img src="pics/spacer.gif" style="border: 0px;" alt=""></td>
	</tr>
	<tr style="background-color: #DDDFFF;">
	<td class="text" style="width: 250px;">Fyll i Ruta</td>
	<td class="text"><textarea name="strAnm_Select" style="width: 300px; height: 50px;"></textarea></td>
	</tr>
	<tr>
	<td style="height: 30px;" colspan="2"><img src="pics/spacer.gif" style="border: 0px;" alt=""></td>
	</tr>

Notera att ovanstående bara är ett utkast av mitt formulär, då det är ganska stort. Formulärsnamnet är dock "frm_serv".

Tack för hjälpen!

Peter SMedlem sedan dec. 20025 483 inlägg
#2

Tja!

Jag tog mig friheten att döpa om textarean eftersom den hade samma namn som <select>en:

<tr style="background-color: #DDDFFF;">
	<td class="text" style="width: 250px;">Fanns Anm.?</td>
	<td class="text">
	<input type="radio" style="background-color: #DDDFFF; border: 0px;" name="strAnm" onclick="this.form.elements['strAnm_Ta'].disabled = true; this.form.elements['strAnm_Select'].disabled = false">Ja, Snabbval     
		<input type="radio" style="background-color: #DDDFFF; border: 0px;" name="strAnm" onclick="this.form.elements['strAnm_Ta'].disabled = false; this.form.elements['strAnm_Select'].disabled = true">Ja, Fyll I     
			<input type="radio" style="background-color: #DDDFFF; border: 0px;" name="strAnm" checked="checked" onclick="this.form.elements['strAnm_Select'].disabled = this.form.elements['strAnm_Ta'].disabled = true">Nej
	</td>
	</tr>
	<tr>
	<td style="height: 2px;" colspan="2"><img src="pics/spacer.gif" style="border: 0px;" alt=""></td>
	</tr>
	<tr>
	<td class="text" style="width: 250px;">Snabbval</td>
	<td class="text">
	<select name="strAnm_Select" style="width: 305px; border: 1px #000000 solid; background-color: #E7E8FF;">
	<option>Välj</option>
	<option value="s_lampa_saknas">Sladdlampa Saknas</option>
	<option value="s_bel_defekt">Schaktbelysning Defekt</option>
	<option value="m_bel_defekt">Maskinrumsbelysning Defekt</option>
	</select>
	</td>
	</tr>
	<tr>
	<td style="height: 2px;" colspan="2"><img src="pics/spacer.gif" style="border: 0px;" alt=""></td>
	</tr>
	<tr style="background-color: #DDDFFF;">
	<td class="text" style="width: 250px;">Fyll i Ruta</td>
	<td class="text"><textarea name="strAnm_Ta" style="width: 300px; height: 50px;"></textarea></td>
	</tr>
	<tr>
	<td style="height: 30px;" colspan="2"><img src="pics/spacer.gif" style="border: 0px;" alt=""></td>
	</tr>

<script type="text/javascript">
var elms = document.forms["frm_serv"].elements;

elms["strAnm_Select"].disabled = elms["strAnm_Ta"].disabled = true;
</script>

:)

MickeA.comMedlem sedan feb. 20034 441 inlägg
#3

Det där fungerade utmärkt!
En sista grej bara, innan jag kan markera den här tråden som löst.
Jag skulle vilja ordna så att bakgrunden samt linjerna runt om textarean ändrar färg, beroende på om denna är aktiv / inaktiv. Hur sja jag modifiera scriptet ovan?`
Har försökt en del, men mina js-kunskaper är lite knackiga, så därför vänder jag mig till er ;)

Tack!

Peter SMedlem sedan dec. 20025 483 inlägg
#4
<script type="text/javascript">

var arr = ["strAnm_Select","strAnm_Ta"];

function ed(f, e, d) {
    var elms = f.elements,
	eLen = e.length,
	dLen = d.length;

    while (eLen-->0) elms[e[eLen]].disabled = false;
    while (dLen-->0) elms[d[dLen]].disabled = true;

    switch (elms["strAnm_Ta"].disabled) {
	case true:
	{
	    elms["strAnm_Ta"].parentNode.style.backgroundColor = "gray";
	    elms["strAnm_Ta"].style.backgroundColor = "#eee";
	} break;

	case false:
	{
	    elms["strAnm_Ta"].parentNode.style.backgroundColor = "#dddfff";
	    elms["strAnm_Ta"].style.backgroundColor = "white";
	} break;
    }
}

</script>

<tr style="background-color: #DDDFFF;">
	<td class="text" style="width: 250px;">Fanns Anm.?</td>
	<td class="text">
	<input type="radio" style="background-color: #DDDFFF; border: 0px;" name="strAnm" onclick="ed(this.form, ['strAnm_Select'], ['strAnm_Ta'])">Ja, Snabbval     
		<input type="radio" style="background-color: #DDDFFF; border: 0px;" name="strAnm" onclick="ed(this.form, ['strAnm_Ta'], ['strAnm_Select'])">Ja, Fyll I     
			<input type="radio" style="background-color: #DDDFFF; border: 0px;" name="strAnm" checked="checked" onclick="ed(this.form, [], ['strAnm_Select', 'strAnm_Ta'])">Nej
	</td>
	</tr>
	<tr>
	<td style="height: 2px;" colspan="2"><img src="pics/spacer.gif" style="border: 0px;" alt=""></td>
	</tr>
	<tr>
	<td class="text" style="width: 250px;">Snabbval</td>
	<td class="text">
	<select name="strAnm_Select" style="width: 305px; border: 1px #000000 solid; background-color: #E7E8FF;">
	<option>Välj</option>
	<option value="s_lampa_saknas">Sladdlampa Saknas</option>
	<option value="s_bel_defekt">Schaktbelysning Defekt</option>
	<option value="m_bel_defekt">Maskinrumsbelysning Defekt</option>
	</select>
	</td>
	</tr>
	<tr>
	<td style="height: 2px;" colspan="2"><img src="pics/spacer.gif" style="border: 0px;" alt=""></td>
	</tr>
	<tr style="background-color: #DDDFFF;">
	<td class="text" style="width: 250px;">Fyll i Ruta</td>
	<td class="text"><textarea name="strAnm_Ta" style="width: 300px; height: 50px;"></textarea></td>
	</tr>
	<tr>
	<td style="height: 30px;" colspan="2"><img src="pics/spacer.gif" style="border: 0px;" alt=""></td>
	</tr>

	<script type="text/javascript">
	ed(document.forms['frm_serv'], [], ['strAnm_Select', 'strAnm_Ta'])
	</script>

:)

MickeA.comMedlem sedan feb. 20034 441 inlägg
#5

Oj, vilka grejer du kommer med här ;)
Ska prova ikväll när jag kommer hem, så hör jag av mig.

Tack!

MickeA.comMedlem sedan feb. 20034 441 inlägg
#6

Tjena!
Har inte haft tid förrän idag att testa det som du skrev ovan. Hur som helst funkar det ausgemärkt så jag ville bara tack så hemskans mycket för all hjälp!

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