PHP - Checkbox no funciona en grid basica

 
Vista:

Checkbox no funciona en grid basica

Publicado por DEVILSITO (140 intervenciones) el 25/12/2014 02:18:17
En una grid muestro varios campos de una tabla de datos. Ademas he colocado un Input tipo checkbox, el cual se muestra perfectamente. La idea es que a partir de este checkbox el usuario pueda seleccionar este registro (o marcarlo) para luego con un boton poder efectuar ciertas operaciones con los registros marcados.
El caso es que al seleccionar, debo validar si el registro (marcado con este checkbox) cumple determinadas caracteristicas, en caso contrario me deberia desplegar un ALERT diciendo que no cumple.

La grid basica la he construido asi:

while($row = mysql_fetch_array($datos)) {
echo "<tr>" ;
echo "<td>".$tip[$row['CODTIP_C']]."</td>\n";
echo "<td>".$row['NUMBIE_C']."</td>\n";
echo "<td>".$row['CODOFE_C']."</td>\n";
echo "<td>".$row['TOTUTI_N']."</td>\n";
echo "<td>".$row['TERRAZ_N']."</td>\n";
echo "<td>".$row['PRECIO_N']."</td>\n";
echo "<td>".$row['PRECMN_N']."</td>\n";
echo "<td>".($row['RESERVADO']?$row['RESERVADO']:"&nbsp;")."</td>\n";
echo "<td><input type='checkbox' name='selecc' id='selecc' onclick='selecciona()' </td>\n";
echo "</tr> \n";
}

Si te fijas, el ultimo es el checkbox, y para validarlo utilizo un JS que es el siguiente:

function selecciona() {
if(document.getElementById("selecc").checked) {
alert('Ha seleccionado un registro ');
} else {
alert('No esta Chequeado');
}
}

Sin embargo al tiquear o destiquear se var el lado de "No esta tiqueado", es decir no discrimina.
¿que sucede?, habra algo que deba cambiar? puesto que tengo en otros scripts varios checkbox's los cuales funcionan perfectamente. Parece que en la grid es donde no funciona.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Checkbox no funciona en grid basica

Publicado por DEVILSITO (140 intervenciones) el 25/12/2014 05:10:12
Me respondo yo mismo:
El ID es debe ser unico (en este caso checkbox), de lo contrario puede suceder cualquier cosa.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Vainas
Val: 34
Ha aumentado su posición en 3 puestos en PHP (en relación al último mes)
Gráfica de PHP

Checkbox no funciona en grid basica

Publicado por Vainas (262 intervenciones) el 25/12/2014 14:28:57
Buenas:

Aparte de que los id's sean distintos tienes un truco para no repetir la function y es pasandole this asi sabras cual ha sido seleccionado:

1
2
3
<input type='checkbox' name='selecc1' id='selecc1' onclick='selecciona(this);'>
    <input type='checkbox' name='selecc2' id='selecc2' onclick='selecciona(this);'>
...

y el js:

1
2
3
4
5
6
7
8
function selecciona(res) {
    alert(res.name);
if(res.checked) {
alert('Ha seleccionado un registro ');
} else {
alert('No esta Chequeado');
}
}

Aqui tienes tu ejemplo funcionando por cada check: http://jsfiddle.net/vse7jzLd/

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar