Foros del Web » Programando para Internet » Javascript »

Validación de grupos de radio button generados dinámicamente

Estas en el tema de Validación de grupos de radio button generados dinámicamente en el foro de Javascript en Foros del Web. Hola: Es que tengo una situación en una página en la que generé 18 grupos de Radio Button con PHP. El problema es cuando quiero ...
  #1 (permalink)  
Antiguo 05/12/2011, 18:32
Avatar de ElSiniestro  
Fecha de Ingreso: diciembre-2011
Ubicación: Ibagué
Mensajes: 115
Antigüedad: 13 años
Puntos: 23
Pregunta Validación de grupos de radio button generados dinámicamente

Hola:

Es que tengo una situación en una página en la que generé 18 grupos de Radio Button con PHP. El problema es cuando quiero validarlos con JavaScript, debido a que varía la cantidad de subgrupos según sea el usuario (unos usuarios 2 algunos 8 )

Si al menos existiera una función que cuente esos subgrupos, sería de gran ayuda :)

Les dejo el código generador:

Código:
<?php
	include("datos.php");
	include("conexion.php");
	session_start();
	Identifica();
	$consulta= sprintf("SELECT detalle.id_detalle, asignatura.nom_asignatura, detalle.num_grupo FROM detalle, asignatura WHERE detalle.cod_docente= ".$_SESSION['codigo']." AND asignatura.id_asignatura= detalle.id_asignatura");
	$query= mysqli_query($vinculo, $consulta);
	for($i=0; $i<mysqli_num_rows($query); $i++)	{
		$fila=mysqli_fetch_array($query);
		$asignatura[]= $fila['nom_asignatura'];
		$grupo[]= $fila['num_grupo'];
		$detalle[]= $fila['id_detalle'];
		$_SESSION['detalle'][]= $fila['id_detalle'];
	}
	mysqli_free_result($query);
	mysqli_close($vinculo);
	$titulos= array_combine($asignatura, $grupo);
	reset($asignatura);
	reset($grupo);
	reset($detalle);
?>
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
<html>
	<head>
		<title>Autoevaluación Docente</title>
		<link rel="stylesheet" type="text/css" />
	</head>
	<body>
		<div id="header">
			<br />
			<h1>EPRED</h1>
			<h2>Sistema para la Evaluación de Procesos Educativos</h2>
			<br />
		</div>
		<div id="subtitulo">
			<h3>Autoevaluacion Docente</h3>
		</div>
		<div id="evaluacion">
			<h4>Por Favor Responde las siguientes preguntas</h4>
			<form action="reg-autoevaluacion.php" method="POST">
				<table>
				<?php
					include("matrices.php");
					for($k=1; $k<count($matriz_auto1); $k++) {
						$span= 1+count($asignatura);
						echo("<tr><th colspan=\"$span\">$matriz_auto1[$k]</th></tr>");
						echo("<tr><td colspan=\"$span\">$matriz_auto2[$k]</td></tr>");
						echo("<tr><td></td>");
						foreach($titulos as $key => $value) echo("<td>$key<br/>Grupo: $value</td>");
						echo("</tr>");
						for($j=6; $j>=1; $j--) {
							echo("<tr><td>$valor[$j]</td>");
							for($i=0; $i<count($asignatura); $i++) {
								$h= "$k.$j.$i";
								echo("<td><input type=\"radio\" name=\"$asignatura[$i].".$k."\" id=\"$h\" value=\"$j\" /></td>");
							}
							echo("</tr>");
						}
					}
					echo("<tr><td colspan=\"$span\"><label for=\"obs_doc\"><br/><strong>$matriz_auto1[19]</strong></label></td></tr>");
					echo("<tr><td colspan=\"$span\">$matriz_auto2[19]<br/><textarea name=\"obs_doc\" id=\"obs_doc\" cols=\"80\" rows=\"5\"></textarea></td></tr>");
				?>
				</table>
				<input type="submit" name="ingresar" value="Enviar Datos"/>
			</form>
		</div>
		<div id="footer"></div>
	</body>
</html>
Les agradezco su atención y su respuesta
  #2 (permalink)  
Antiguo 06/12/2011, 06:26
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 16 años, 6 meses
Puntos: 1012
Respuesta: Validación de grupos de radio button generados dinámicamente

nos muestras el php, pero lo que realmente se necesita es el php ejecutado.
por lo general todos los controles de un mismo grupo han de tener el mismo nombre. eso te facilitará mucho la validación, ya que puedes acceder a cada grupo por su name, usando el método getElementsByName()
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}
  #3 (permalink)  
Antiguo 06/12/2011, 08:34
Avatar de ElSiniestro  
Fecha de Ingreso: diciembre-2011
Ubicación: Ibagué
Mensajes: 115
Antigüedad: 13 años
Puntos: 23
Respuesta: Validación de grupos de radio button generados dinámicamente

El asunto es que según sea el usuario algunos tienen que evaluar de 1 a 8 asignaturas

Adjunto el resultado generado con 2 preguntas:

Código:
<form action="reg-autoevaluacion.php" method="POST">

	<table>

		<tr><th colspan="3">Titulo Pregunta1</th></tr>
		<tr><td colspan="3">Pregunta1</td></tr>
		<tr><td></td><td>Asignatura1<br/>Grupo: 01</td>
		<td>Asignatura2<br/>Grupo: 01</td></tr>
		<tr><td>Muy Superior</td><td><input type="radio" name="Asignatura1.1" id="1.6.0" value="6" /></td><td><input type="radio" name="Asignatura2.1" id="1.6.1" value="6" /></td></tr>
		<tr><td>Superior</td><td><input type="radio" name="Asignatura1.1" id="1.5.0" value="5" /></td><td><input type="radio" name="Asignatura2.1" id="1.5.1" value="5" /></td></tr>
		<tr><td>Medio Alto</td><td><input type="radio" name="Asignatura1.1" id="1.4.0" value="4" /></td><td><input type="radio" name="Asignatura2.1" id="1.4.1" value="4" /></td></tr>
		<tr><td>Medio</td><td><input type="radio" name="Asignatura1.1" id="1.3.0" value="3" /></td><td><input type="radio" name="Asignatura2.1" id="1.3.1" value="3" /></td></tr>
		<tr><td>Bajo</td><td><input type="radio" name="Asignatura1.1" id="1.2.0" value="2" /></td><td><input type="radio" name="Asignatura2.1" id="1.2.1" value="2" /></td></tr>
		<tr><td>Muy Bajo</td><td><input type="radio" name="Asignatura1.1" id="1.1.0" value="1" /></td><td><input type="radio" name="Asignatura2.1" id="1.1.1" value="1" /></td></tr>
		<tr><th colspan="3">Titulo Pregunta2</th></tr>
		<tr><td colspan="3">Pregunta2</td></tr>
		<tr><td></td><td>Asignatura1<br/>Grupo: 01</td><td>Asignatura2<br/>Grupo: 01</td></tr>
		<tr><td>Muy Superior</td><td><input type="radio" name="Asignatura1.2" id="2.6.0" value="6" /></td><td><input type="radio" name="Asignatura2.2" id="2.6.1" value="6" /></td></tr>
		<tr><td>Superior</td><td><input type="radio" name="Asignatura1.2" id="2.5.0" value="5" /></td><td><input type="radio" name="Asignatura2.2" id="2.5.1" value="5" /></td></tr>
		<tr><td>Medio Alto</td><td><input type="radio" name="Asignatura1.2" id="2.4.0" value="4" /></td><td><input type="radio" name="Asignatura2.2" id="2.4.1" value="4" /></td></tr>
		<tr><td>Medio</td><td><input type="radio" name="Asignatura1.2" id="2.3.0" value="3" /></td><td><input type="radio" name="Asignatura2.2" id="2.3.1" value="3" /></td></tr>
		<tr><td>Bajo</td><td><input type="radio" name="Asignatura1.2" id="2.2.0" value="2" /></td><td><input type="radio" name="Asignatura2.2" id="2.2.1" value="2" /></td></tr>
		<tr><td>Muy Bajo</td><td><input type="radio" name="Asignatura1.2" id="2.1.0" value="1" /></td><td><input type="radio" name="Asignatura2.2" id="2.1.1" value="1" /></td></tr>
	</table>
</form>

Etiquetas: radiobutton, validar
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 13:19.