Foros del Web » Programando para Internet » Javascript »

Cambiar color de celdas dependiendo de un campo oculto

Estas en el tema de Cambiar color de celdas dependiendo de un campo oculto en el foro de Javascript en Foros del Web. Estoy haciendo una pagina en la que se corrige la opcion marcada por el usuario segun el valor del campo hidden (sea A, B o ...
  #1 (permalink)  
Antiguo 12/05/2007, 06:16
 
Fecha de Ingreso: febrero-2006
Mensajes: 103
Antigüedad: 18 años, 2 meses
Puntos: 1
Cambiar color de celdas dependiendo de un campo oculto

Estoy haciendo una pagina en la que se corrige la opcion marcada por el usuario segun el valor del campo hidden (sea A, B o C). El codigo que tengo hasta ahora es el siguiente:

Código:
<html>
<head>
<title></title>
<script>
function corregir()
{
 if(p1resp == v1)
 {
 
 }

p1ca.style.backgroundColor="#ff0000";
}
</script>
</head>
<body>
<form name="test">
<table width="300px" border="1" style="border-collapse:collapse">
<tr>
 <td id="p1ca"><input type="radio" name="p1resp" value="A">A) Celda 1</td>
</tr>
<tr>
 <td id="p1cb"><input type="radio" name="p1resp" value="A">B) Celda 2</td>
</tr>
<tr>
 <td id="p1cc"><input type="radio" name="p1resp" value="A">C) Celda 3</td>
</tr>
</table>
<input type="button" value="CAMBIAR" onclick="corregir()">
<input type="hidden" name="V1" value="A"><input type="hidden" name="V2" value="B"><input type="hidden" name="V3" 

value="C">
</form>
</body>
</html>
V1 almacena el valor correcto, es decir, la respuesta correcta en forma de A, B o C, que son las posibles respuestas. Necesito que si el usuario acierta, el campo se pinte en verde, pero si falla, el que el ha marcado se pinte en rojo y la respuesta correcta en verde. Tambien hay que tener en cuenta que puede haber preguntas que solo tengan como respuestas A y B, no existiendo C. Con tener el codigo de una sola pregunta, despues ya adapto las restantes copiando y pegando, pero llevo 3 dias probando y buscando codigos, con montones de dolores de cabeza y no logro hacer esto. Agradezco si alguien puede hecharme un cable, tengo que entregarlo el lunes y es lo unico que me falta. Gracias anticipadas.
  #2 (permalink)  
Antiguo 12/05/2007, 15:10
 
Fecha de Ingreso: febrero-2006
Mensajes: 103
Antigüedad: 18 años, 2 meses
Puntos: 1
Re: Cambiar color de celdas dependiendo de un campo oculto

Esto es lo mas que he conseguido hacer, pero no funciona, no entiendo donde esta el error.

Código:
<html>
<head>
<title></title>
<script>
function corregir()
{
 if(p1resp == V1)
 {
  if(V1 == "A")
  {
   p1ca.style.backgroundColor="#669900";
  }
  if(V1 == "B")
  {
   p1cb.style.backgroundColor="#669900";
  }
  if(V1 == "C")
  {
   p1cc.style.backgroundColor="#669900";
  }
 }
 if(!(p1resp == V1))
 {
  if(p1resp == "A")
  {
   p1ca.style.backgroundColor="#ff0000";
  }
  if(p1resp == "B")
  {
   p1cb.style.backgroundColor="#ff0000";
  }
  if(p1resp == "C")
  {
   p1cc.style.backgroundColor="#ff0000";
  }
  if(V1 == "A")
  {
   p1ca.style.backgroundColor="#669900";
  }
  if(V1 == "B")
  {
   p1cb.style.backgroundColor="#669900";
  }
  if(V1 == "C")
  {
   p1cc.style.backgroundColor="#669900";
  }
 }
}
</script>
</head>
<body>
<form name="test">
<table width="300px" border="1" style="border-collapse:collapse">
<tr>
 <td id="p1ca"><input type="radio" name="p1resp" value="A">A) Celda 1</td>
</tr>
<tr>
 <td id="p1cb"><input type="radio" name="p1resp" value="B">B) Celda 2</td>
</tr>
<tr>
 <td id="p1cc"><input type="radio" name="p1resp" value="C">C) Celda 3</td>
</tr>
</table>
<input type="button" value="CAMBIAR" onclick="corregir()">
<input type="hidden" name="V1" value="A">
</form>
</body>
</html>
Seguro que esto se puede hacer con mucho menos codigo, pero es algo que me es indiferente, porque se va a ejecutar en una red local, asi que no me importa el tamaño final del fichero, lo unico que necesito es que este codigo funcione, una vez funcione solo tengo que copiar y pegar y cambiar los nombres de las variables. Saludos.
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 23:23.