conni: javascript

Beitrag lesen

Hallo zusammen,
ich habe für folgendes Problem leider noch keine Lösung gefunden (weder in selfhtml selbst, noch in den Forumsbeiträgen):
Über ein Formular mit Radiobuttons können verschiedene Dateien in einen iframe geladen werden, wo wiederum über inputfelder (Radio) je nach Auswahl verschiedene Dateien angezeigt werden. Die Formulare mit den Radiobuttons habe ich zur Strukturierung wie folgt in Tabellen gepackt:

<form name="formhgr">
<table>
<tr><td colspan="2">Wählen Sie</td></tr>

<tr id="row0">
<td><input name="hgr" value="ogr/b00.htm" type=radio id="00" onClick="change()"></td>
<td>B erste Wahl (00)</td>
</tr>

<tr id="row1">
<td><input name="hgr" value="ogr/b01.htm" type=radio id="01" onClick="change()"></td>
<td>B zweite Wahl (01)</td>
</tr>
</table>
</form>
<iframe src="" name="ogr" id="ogr" width="300" height="300"></iframe>

(Die Funktion "change()" bewirkt das Anzeigen der entsprechenden Datei im iframe "ogr" und Sammeln der ID's der Radiobuttons zur anschließenden Anzeige).

Ist es möglich, die Tabellenzellen (z.B. "B erste Wahl (00)") oder auch die ganze entsprechende Zeile bei Auswahl einzufärben oder sonstwie hervorzuheben?

Mit onfocus="this.style.backgroundColor='blue'" und entsprechendem "onblur" direkt in der Zelle mit dem Radiobutton angegeben, klappt es zwar, aber wenn eine weitere Auswahl im nächsten iframe getroffen wird, ist der Focus natürlich weg - und die farbliche Hervorhebung auch. Habe es mit einem Script versucht:

function faerbe(){
   if(document.formhgr.hgr[0].checked == true){
  document.getElementById("row0").style.backgroundColor="blue";
  document.getElementById("row1").style.backgroundColor="gray";
  }
   else if(document.formhgr.hgr[1].checked == true){
  document.getElementById("row0").style.backgroundColor="gray";
  document.getElementById("row1").style.backgroundColor="blue";
  }
}
Das Script klappt auch, aber ich müsste lauter solche Scripte schreiben, weil die Anzahl der möglichen Radiobuttons stark variiert (von 2 bis 20).

Kann man das nicht effektiver lösen?

Wenn mir da jemand weiterhelfen könnte, wär ich sehr froh.

Viele Grüße
Conni