E' un po' complicato utilizzare gli script che mi hai proposto perché sto utilizzando joomla per questo lavoro e purtroppo non posso utilizzare jquery perché provoca conflitti con un modulo.
Nel frattempo ho trovato questo piccolo codice che mi si adatterebbe alla perfezione se non fosse che su una singola pagina funziona bene mentre se la utilizzo con ajax no.
Suppongo che il problema si trovi nel fatto che qualcosa si perde tra pagina chiamante e pagina php.
Questo è il codice:
codice:
<script>
var radioimages =
{
on :createImage("on.gif"),
off:createImage("off.gif")
}
function createImage(src){ var img = new Image(); img.src = src; return img; }
function radioToggle(button)
{
var form = button.form,
rads = form.elements['rad'],
rad, k = 0,
images = form.getElementsByTagName("img");
while(rad=rads[k])
images[k++].src = rad.checked
? radioimages.on.src
: radioimages.off.src ;
}
</script>
<form>
<input type="radio" name="rad" onclick="radioToggle(this)">
[img]off.gif[/img]
<input type="radio" name="rad" onclick="radioToggle(this)">
[img]off.gif[/img]
<input type="radio" name="rad" onclick="radioToggle(this)">
[img]off.gif[/img]
<input type="radio" name="rad" onclick="radioToggle(this)">
[img]off.gif[/img]
<form>
Io sto procedendo cosi:
Sulla pagina chiamante metto lo script js e sulla pagina php metto soltanto
Codice PHP:
$status[$i] = "<input type=\"radio\" name='rad' value=\"$i\" onclick=\"radioToggle(this)\"><img src=\"off.gif\" width=\"30\" height=\"30\">";
Ho verificato con degli alert a che punto si interrompe lo script e il problema è nella riga con la funzione
codice:
rads = form.elements['rad'],
.
Poi una domanda: è giusto mettere lo script nella pagina chiamante? Penso di si perché gli alert ripondono quindi la funzione "radioToggle(this)" va.
Cosa potrebbe essere a dare problemi a quella riga?
Edit: Dimenticavo. L'errore che mi da IE è "necessario oggetto".