Este foro ya no está activo, así que no puedes publicar nuevas preguntas ni responder a las preguntas existentes.

Marcar un Checkbox por medio de ID con Onclick

12 de marzo de 2017

Hola, conozco una funcion Java para Mostrar/Ocultar contenido mediante ID:

Contenido del HEAD:

<SCRIPT language="javascript">
            function Mostrar (objetoVisualizar) {
            document.all[objetoVisualizar].style.display='block';
            }
            function Ocultar (objetoVisualizar) {
            document.all[objetoVisualizar].style.display='none';
            }
        </SCRIPT>

Contenido del BODY (Puedes utilizar la funcion en la etiqueta que quieras, en este caso en una imagen):

<img src="prueba.jpg" onclick="Javascript:Mostrar('capa1')">
<div id='capa1' style="display:none">
Hola Hola, me muestro al clicar la imagen
</div>

Vale, ese código funciona perfectamente, llama a un ID y ejecuta una funcion, he intentado transformar la funcion para que marque una casilla mediante "Onclick" por ID como ahí, y no consigo que funcione, éste es mi código:

Contenido del HEAD:

<!-- Marcar casilla por ID -->  
        <SCRIPT language="javascript">
        function marcarcasilla(objetoMarcar){ 
            checkboxes=document.all[objetoMarcar];
            for(i=0;i<checkboxes.length;i++){ //recoremos todos los controles
                if(checkboxes[i].type == "checkbox"){ //solo si es un checkbox entramos
                    checkboxes[i].checked = objetoMarcar.checked;
                }
            }
        }
        </script>
    <!-- FIN - Marcar casilla por ID -->

Contenido del BODY (En este caso utilizaré una tabla, y que al clicarla, marque la casilla Input, ha de ser por ID porque se me generan muchas tablas con diferentes ID, sino las marcaría todas, tampoco puedo poner el ID exacto en la funcion porque como se generan tablas, no es una ID statica, es una ID dinámica):

<?PHP echo "
<table>
";
?>
 
<tr onclick="Javascript:marcarcasilla('<?PHP echo"c".$fila[ID];?>')" style='cursor:pointer;'>
 
<?PHP echo "
    <td>
       Hola Hola quiero que al clicar esta fila se marque la casilla input
    </td>
    <td>  
<input type='checkbox' name='selectall[]'  id='c".$fila[ID]."' value='".$fila[ID]."'/>
    </td>
</tr>
</table>

Como podrás ver, la etiqueta input la tengo en PHP con el resto del codigo, el valor 'Name' lo utilizo para Marcar/Desmarcar todas las casillas a partir de 1, que ya me funciona, por eso quiero hacerlo por ID el otro sistema, así evitaria conflictos.

Un Saludo, espero que puedan arreglarme el código