Radiobuttons gegen Images tauschen
Arno
- dhtml
Hallo zusammen,
ich sitze schon 2 Tagen verzweifelt vor folgendem Problem:
Es wird ein Template generiert, das Radiobuttons enthält. Diese sollen durch Images ausgetauscht werden. Soweit, sogut, Nach checken eines Radiobuttons/Images soll dieses Image wiederum ausgetauscht (Image2)werden und wenn man dann einen anderen Radiobutton/Image anwählt muss das 1. Image ja wieder zurückgesetzt werden. Das SCHWIERIGE ist auch, das man vorher nicht weiß, wieviele Radiobuttons vom Renderer generiert werden - kommt auf die Frage an und das die Radiobuttons alle den gleichen "Name" haben.
Ich habe ein Stück Script gefunden der die Radiobuttons durch Images ersetzt und bei dem schon ein Eventhandler implementiert ist, aber ich bringe den Befehl, das er beim Event IMAGE1 gegen IMAGE2 tauschen soll einfach nicht in der "NEW Funktion" ohne Fehlermeldung unter, bzw. dann sind die Images weg, aber dafür die Radiobuttons wieder da. Leider sind meine DOM-Kenntnisse nicht gerade überragend und so komme ich einfach nicht weiter.
Hat jemand einen Tipp, wie ich das Eventhandling so gestalten kann, das es auch funktioniert?
Vielen Dank - und hier das Script:
<script>
// This is the image path you have to change!!
var image = "images/test.gif";
var name = "";
var index = 0;
// Find all <span> tags on the page
var spans = document.getElementsByTagName("SPAN");
for (var f = 0; f < spans.length; f++)
{
var span = spans[f];
// If the span is the "mrSingleText" then...
if (span.className == "mrSingleText")
{
// Find the old input radio button.
var input = span.getElementsByTagName("INPUT")[0];
// Hide it
input.style.display = "none";
else
{
index++;
}
// Create a new <img> tag
var img = document.createElement("IMG");
img.src = image;
// Attach a onclick event that click on the hidden input radio
img.attachEvent("onclick", new Function("document.forms[0]." + name + "[" + index + "].checked = true;"));
// Insert the image
span.insertBefore(img, span.childNodes[0]);
}
}
</script>