En otro hilo(ya cerrado), he visto un código para deseleccionar los radio buttons...lo he adaptado a mi código pero no me funciona.Mi formulario se llama "preguntas", entonces he sustituido el nombre por "var f=document.Preguntas". Tambien he eliminado "var name=obj.name" y en la condición "if(type=='radio)" y por último en la función solo le paso el parámetro "0", algo así onclick="limpiar(0)", todo esto en un boton pero no me hace nada...
![Neurótico](http://static.forosdelweb.com/fdwtheme/images/smilies/scared.png)
![Neurótico](http://static.forosdelweb.com/fdwtheme/images/smilies/scared.png)
Por cierto son grupos de preguntas de cuatro respuestas, cada grupo de radiobuttons tiene un "name=preguntaNº", siendo nº el número en el que estamos.
El código original es:
Código:
Y mi código adaptado es:<html> <head> </head> <script> function limpiar(cual, accion){ // Action: 0=Deseleccionar todos 1=Seleccionar todos -1=Invertir seleccion var f = document.formulario for (var i=0; i<f.elements.length; i++){ var obj = f.elements[i] var name = obj.name if (name==cual){ obj.checked = ((accion==1)? true : ((accion==0)? false : !obj.checked) ); } } } </script> <body> <form name="formulario"> <input type="radio" value="1" name="uno"><br> <input type="radio" value="1" name="uno"> <input type="text" name="pepe"> <a href="javascript:limpiar('uno',0)">limpiar</a> </form> </body> </html>
Código:
function limpiar( accion){ // Action: 0=Deseleccionar todos 1=Seleccionar todos -1=Invertir seleccion var f = document.Preguntas; for (var i=0; i<f.elements.length; i++){ var obj = f.elements[i] //var name = obj.name if (type=='radio'){ obj.checked = ((accion==1)? true : ((accion==0)? false : !obj.checked) ); } } }
Saludos y a ver si alguien me puede ayudar...