Hola:
Veo un par de maneras posibles de hacerlo, pero la más elegante me ha parecido ésta: Detectar el radio seleccionado, y sustituirlo por un nuevo elemento desmarcado.
Código PHP:
<input type="radio" name="r" /> Uno<br/>
<input type="radio" name="r" /> Dos<br/>
<input type="radio" name="r" /> Tres<br/>
<input type="radio" name="r" /> Cuatro<br/>
<input type="radio" name="r" /> Cinco<br/>
<input type="radio" name="r" /> Seis<br/>
<button type="button" onclick="desSeleccionar('r')">desSeleccionar radio seleccionado</button>
<script type="text/javascript">
<!--
function desSeleccionar(nombre) {
var losRadio = document.getElementsByName(nombre);
for(var i=0; i<losRadio.length; i++) {
if( losRadio[i].checked )
break;
}
if( i<losRadio.length ) { // Existe el elemento
var elRadio = losRadio[i];
var nuevoRadio = document.createElement("INPUT");
nuevoRadio.type = "radio";
nuevoRadio.name = nombre;
elRadio.parentNode.replaceChild( nuevoRadio, elRadio );
}
}
// -->
</script>
Así que bueno, ésto funciona en FF2 y en IE6, habría que mirar si se envía bien del todo, supongo que sí. También habría que tener cuidado con otros atributos a añadir.
Un saludo.