webForumDet fria alternativet

Ändra bakgrundsfärg i tabell när radio är selected.

JavaScript

4 svar · 232 visningar · startad av KoTTeN

Medlem sedan sep. 20011 722 inlägg
Frågan#1

Jag eftersöker ett javascript där bakgrundsfärgen i en TR ändras när en radioknapp blir aktiverad och att färgen återgår när knappen blir inaktiverad.

Någon som har ett sådant script liggande någonstans?

Medlem sedan juni 20004 308 inlägg
#2
<style type="text/css">
.inaktiv{ background-color:white; }
.aktiv{ background-color:rgb(150,150,255); }
</style>

<table style="border:solid black 1px;">
<tr id="foo" class="inaktiv"><td>Detta är en cell...</td><td>... och en till.</td></tr>
</table>

<form>
<input type="radio" name="myradio" onClick="document.getElementById('foo').className=(this.checked)?'aktiv':'inaktiv';"> Blå<br/>
<input type="radio" name="myradio" onClick="document.getElementById('foo').className=(this.checked)?'inaktiv':'aktiv';"> Vit
</form>
Medlem sedan sep. 20011 722 inlägg
#3

Tack! Fast det var inte riktigt som jag tänkt mig, formulerade mig dåligt.

Det jag tänkte var en tabell som innehåller ett antal rader (tr). I varje rad finns en radioknapp. Genom att markera en radioknapp ska bakgrundsfärgen i den aktuela raden (tr) ändras. Markerar man en annan radioknapp ska dess bakgrund ändras och den tidigare numera omarkerade ska återgå till orginalfärg.

Samma funktion finns på Hotmail dock med radioknappar istället för checkbox. Har sneglat på deras script men tappar ständigt bort mig i min egen okunighet.

Medlem sedan juni 20004 308 inlägg
#4

Då moddar vi lite:

<style type="text/css">
.inaktiv{ background-color:white; }
.aktiv{ background-color:rgb(150,150,255); }
</style>

<script>
var current=null;
function mark(obj,type){
	while(obj.nodeName!=type&&obj.parentNode){ obj=obj.parentNode; }
	if(current){ current.className="inaktiv"; }
	obj.className="aktiv";
	current=obj;
}
</script>
<form>
<table style="border:solid black 1px;">
<tr class="inaktiv"><td><input type="radio" name="myradio" onClick="mark(this,'TR');"></td><td>Detta är en cell...</td></tr>
<tr class="inaktiv"><td><input type="radio" name="myradio" onClick="mark(this,'TR');"></td><td>...och en till</td></tr>
</table>
</form>
Medlem sedan sep. 20011 722 inlägg
#5

Underbar moddifiering Jojoxx! Tack!

251 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
121 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
123 ms — ändringar (db)