Foros del Web » Programando para Internet » PHP »

problemas con check

Estas en el tema de problemas con check en el foro de PHP en Foros del Web. amigos tengo el siguiente codigo que se que funciona, pero extrañamente no me esta marcando las checkbox Código HTML: <script> function marcar(obj,chk) { elem=obj.getElementsByTagName('input'); alert(elem); ...
  #1 (permalink)  
Antiguo 07/12/2005, 09:07
 
Fecha de Ingreso: abril-2005
Mensajes: 491
Antigüedad: 19 años, 7 meses
Puntos: 1
problemas con check

amigos tengo el siguiente codigo que se que funciona, pero extrañamente no me esta marcando las checkbox

Código HTML:
<script>
function marcar(obj,chk) {
 elem=obj.getElementsByTagName('input');
 alert(elem);
  for(i=0;i<elem.length;i++)
   elem[i].checked=chk.checked;
   alert(elem[i]);
}
</script>
// despues dentro de esta misma página esta la check que marca todas
<tr bgcolor="#CCCCCC">
<td width="12%"><div align="center"><strong>Generado por </strong></div></td>
<td width="12%"><div align="center"><strong>Descargar</strong></div></td>
<td width="5%" bgcolor="#CCCCCC"><div align="center">
<input name="checkbox" type="checkbox" onClick="marcar(this.parentNode,this)">
</div></td>
// cabe decir que estas check se generar dinamicamente
//aca esta la chek que se genra 
 <input type="checkbox" name="grupocheck[]" value="<?=$row[idfile]?>"> 
ahora si ustedes prueban esto... veran que funciona miren...
Código HTML:
<script>
function marcar(obj,chk) {
 elem=obj.getElementsByTagName('input');
 alert(elem);
  for(i=0;i<elem.length;i++)
   elem[i].checked=chk.checked;
   alert(elem[i]);
}

</script>
<form>
<input name="checkbox" type="checkbox" onClick="marcar(this.parentNode,this)">//marca todas
<input type="checkbox" name="grupocheck[]" value="<?=$row[idfile]?>">
</form> 
  #2 (permalink)  
Antiguo 07/12/2005, 09:39
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 9 meses
Puntos: 772
Hola under_ground

Así por encima, veo que estás poniendo los checkbox fuera del <div> donde tienes el check que los marca. Tendrías que ponerlo todo dentro:
Código PHP:
<div align="center">
<input name="checkbox" type="checkbox" onClick="marcar(this.parentNode,this)">
 <input type="checkbox" name="grupocheck[]" value="<?=$row[idfile]?>"></div></td>
Saludos,
  #3 (permalink)  
Antiguo 07/12/2005, 10:07
 
Fecha de Ingreso: abril-2005
Mensajes: 491
Antigüedad: 19 años, 7 meses
Puntos: 1
probara, pero creo que por ahi no va, tengo un while que genera las check colocare el cod.

Código PHP:
<td width="12%"><div align="center"><strong>Descargar</strong></div></td>
<td width="5%" bgcolor="#CCCCCC"><div align="center">
<input type="checkbox" name="todos" value="1" onClick="validar_checkbox('form1', 'grupocheck')">
</div></td>
</tr>
<?PHP
while($row mysql_fetch_array($adm_show)) { 
echo 
"<tr "
if (
$num_fila%2==0)

echo 
"bgcolor=#E8E8E8"//si el resto de la divisi&oacute;n es 0 pongo un color 
 
}else{ 
 echo 
"bgcolor=#ffffff"//si el resto de la divisi&oacute;n NO es 0 pongo otro color 
}
echo 
">"
?>
<td height="22"><div align="center"><?PHP echo $c++ ?></div></td>
<td height="22"><div align="center"><?=$row[nombre_file]?></div></td>
<td height="22"><div align="center"><?=$row[tipo_file]?></div></td>
<td height="22"><div align="center"><?=$row[fecha_file]?></div></td>
<td height="22"><div align="center"><?PHP 
    $tack_name
=$row[nombre_file];
    
$tack=$row[TBUsuario_id_user];
    
    
$time=mysql_query("SELECT DATE_FORMAT(fecha_file, '%T') as fecha_file FROM tbarchivo WHERE TBUsuario_id_user='$tack' AND nombre_file='$tack_name'")or die(mysql_error());
    
$hour=mysql_fetch_array($time);
    echo 
$hour[fecha_file];
    
?>
    </div></td>
<td height="22"><div align="center"><?=$row[peso_file]?></div></td>
<td height="22"><div align="center"><img src="../../ICON/Lupa2.JPG" alt="<?=$row[com_file]?>" width="20" height="20" align="baseline"></div></td>
    <td height="22"><div align="center"><?
        $user
=$row[TBUsuario_id_user];
        
$query=mysql_query("select nombre,apaterno from tbusuario where id_user='$user'")or die(mysql_error());
        
$datos=mysql_fetch_assoc($query);
        echo 
ucfirst($datos['nombre'])." ".ucfirst($datos['apaterno']);
    
?>
</div></td><td height="22"><font size="3">
<div align="center"><font size="3"> <a href="../DESCARGA/descarga.php?urldir=<?PHP echo $ruta_adm?>&filename=<?=$row[nombre_file]?>"> <img src="../../ICON/download.gif" alt="Descargar Archivo" width="27" height="27" border="0"></a></font></div></td>
    <td height="22"><div align="center">
      <input name="grupocheck[]" type="checkbox" id="grupocheck[]" value="<?=$row[idfile]?>">
      <? echo $row[idfile]?>
    </div></td>
  </tr>
  <? 
      $num_fila
++;
      } 
// cierre while ?>
    </table>
como ven la check que marca todas esta fuera del while, no se si eso creara el conflicto y hace que no se marque.
  #4 (permalink)  
Antiguo 08/12/2005, 07:33
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 20 años, 3 meses
Puntos: 102
... ... solo para confirmar: Lo que no funciona es JavaScript ¿cierto?; el hecho de que con un checkbox de marquen todos (si mis escasos conocimientos no me mienten)...

Recuerda que PHP y JavaScript son cosas diferentes e independientes. Te sugiero (casi te pido...) que si tu problema es con JS muestres la estructura del HTML generado... ya sea se corrija la función JS ó se te indique cómo debe ser ese HTML para buscar generarlo con PHP...

Saludos!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:48.