30/04/2007, 19:12
|
| | Fecha de Ingreso: abril-2007
Mensajes: 3
Antigüedad: 17 años, 8 meses Puntos: 0 | |
Problema al seleccionar checkboxes y pintar celdas. Hola,
Tengo un problema con el siguiente código:
Código:
<?php
include('db.php');
?>
<html>
<head>
<style>
.small {
font-size: 12px;
font-weight:bold;
color:#003333;
font-family:Verdana, Arial, Helvetica, sans-serif;
}
.tabla{
font-size:10px;
font-family:Verdana, Arial, Helvetica, sans-serif;
color:#003366;
}
.tabla a{
color:#8EA2B3;
font-family:Tahoma;
font-size:10px;
text-decoration:none;
}
.tabla a:hover{
color:#8EA2B3;
font-family:Tahoma;
font-size:10px;
text-decoration:underline;
}
</style>
<script>
isIE=document.all?true:false;
var isNS4=document.layers?true:false;
var isNS6=navigator.userAgent.indexOf("Gecko")!=-1?true:false;
function coloreaf(_v,num){
var res;
res=num%2;
if(eval("document.nombreform.op"+_v+".checked")==1){
eval("document.nombreform.op"+_v+".checked=0");
}
else{
eval("document.nombreform.op"+_v+".checked=1");
}
if(res==0){
var bC=new Array('#CC9900','white');//(primera color ya clikeada,nose)
var C=new Array('white','black');
}
else{
var bC=new Array('#FFCC33','white');//(primera ya clikeada,nose)
var C=new Array('white','black');
}
var X=eval("document.nombreform.op"+_v+".checked?0:1");
if(isIE) {
eval("t"+_v+".style.backgroundColor=bC[X]");
eval("t"+_v+".style.color=C[X]");
} if(isNS6) {
document.getElementById("t"+_v).style.backgroundColor=bC[X]; document.getElementById("t"+_v).style.color=C[X];
}
}
</script>
<script>
isIE=document.all?true:false;
var isNS4=document.layers?true:false;
var isNS6=navigator.userAgent.indexOf("Gecko")!=-1?true:false;
function colorea(_v,num){
var res;
res=num%2;
if(eval("document.nombreform.op"+_v+".checked")==1){
eval("document.nombreform.op"+_v+".checked=0");
}
else{
eval("document.nombreform.op"+_v+".checked=1");
}
if(res==0){
var bC=new Array('#062F83','white');
var C=new Array('white','black');
}
else {
var bC=new Array('#062F83','#DFEBFF');
var C=new Array('white','black');
}
var X=eval("document.nombreform.op"+_v+".checked?0:1");
if(isIE){
eval("t"+_v+".style.backgroundColor=bC[X]");
eval("t"+_v+".style.color=C[X]");
}
if(isNS6){
document.getElementById("t"+_v).style.backgroundColor=bC[X];
document.getElementById("t"+_v).style.color=C[X];
}
}
</script>
<script>
isIE=document.all?true:false;
var isNS4=document.layers?true:false;
var isNS6=navigator.userAgent.indexOf("Gecko")!=-1?true:false;
function coloreamosin(_v,num){
var res;
res=num%2;
if(eval("document.nombreform.op"+_v+".checked")==0){
//aqui intercalamos los colores %2 del mouse over ;)
if(res==0){
document.getElementById("t"+_v).style.backgroundColor="#4F80FF";
document.getElementById("t"+_v).style.color="white";
}
else{
document.getElementById("t"+_v).style.backgroundColor="#4F80FF";
document.getElementById("t"+_v).style.color="white";
}
}
}
</script>
<script>
isIE=document.all?true:false;
var isNS4=document.layers?true:false;
var isNS6=navigator.userAgent.indexOf("Gecko")!=-1?true:false;
function coloreamosout(_v,num){
var res;
res=num%2;
if(eval("document.nombreform.op"+_v+".checked")==0){
if(res==0){
document.getElementById("t"+_v).style.backgroundColor="#ffffff";
document.getElementById("t"+_v).style.color="black";
}
else{
document.getElementById("t"+_v).style.backgroundColor="#DFEBFF";
document.getElementById("t"+_v).style.color="black";
}
}
}
function checkUncheckAll(theElement) {
var theForm = theElement.form, z = 0;
for(z=0; z<theForm.length;z++){
if(theForm[z].type == 'checkbox' && theForm[z].name != 'checkall'){
theForm[z].checked = theElement.checked;
}
}
}
</script>
</head>
<form action="prod_sppb.php" method="post" name="nombreform">
<table align="center" bgcolor="#AAAAAA" border="0" cellpadding="0" cellspacing="0" width="750">
<tr>
<td><table align="center" border="0" cellpadding="4" cellspacing="1" width="100%">
<tr bgcolor="#ccddee" class="small">
<td align="center">Id<br /><input type="checkbox" name="checkall" onClick="checkUncheckAll(this);"/></td>
<td>Nombre</td>
<td>Obra</td>
<td>Localización</td>
<td>Fecha</td>
<td>Foto</td>
<td>Notas</td>
<td>Acciones</td>
</tr>
<?php
$color = "#DFEBFF";
$i = 0;
$result = mysql_query("SELECT * FROM `clientes` JOIN imagenes ON `clientes`.`Id_clientes`=`imagenes`.`Id_imagenes` ORDER BY `clientes`.`Id_clientes` DESC", $link);
while ($row = mysql_fetch_row($result)){
$color = ($color == "#DFEBFF") ? "#FFFFFF" : "#DFEBFF";
$i++;
echo "<tr bgcolor=\"".$color."\" class=\"tabla\" id=t".$row[0]." onclick='coloreaf(".$row[0].",".$row[0].")' onMouseOver='coloreamosin(".$row[0].",".$row[0].")' onMouseOut='coloreamosout(".$row[0].",".$row[0].")'>\n";
echo "<td align=\"center\">".$row[0]." <input name='op".$row[0]."' type='checkbox' onclick='colorea(".$row[0].",".$row[0].")'></td>\n";
echo "<td>".$row[1]."</td>\n";
echo "<td>".$row[2]."</td>\n";
echo "<td>".$row[3]."</td>\n";
echo "<td>".$row[4]."</td>\n";
echo "<td><img src=\"../../../".$row[6]."\"></td>\n";
echo "<td>Notas</td>\n";
echo "<td><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" class=\"tabla\">
<tr>
<td><a href=\"ver.php?id=".$row[0]."\">Ver</a> | <a href=\"borrar.php?id=".$row[0]."\">Borrar</a> | <a href=\"editar.php?id=".$row[0]."\">Editar</a></td>
</tr>
</table></td>\n";
echo "</tr>";
}
?>
</table></td>
</tr>
</table>
</form>
</body>
</html>
Cuando selecciono el primer checkbox todos los demas se seleccionan pero tengo una funcion que pinta las filas al estar seleccionado y por ese método no lo hace.
La verdad es que no sé mucho de js y agradecería mucho su ayuda.
Gracias
Última edición por corrupto; 01/05/2007 a las 01:33 |