Foros del Web » Programando para Internet » Javascript »

Cuestionario y campos de autocompletar

Estas en el tema de Cuestionario y campos de autocompletar en el foro de Javascript en Foros del Web. Hola q tal este es mi primer post y tambien entrandome en el mundo de la programacion y me agradeceria mucho su colaboracion para una ...
  #1 (permalink)  
Antiguo 13/05/2012, 11:00
 
Fecha de Ingreso: septiembre-2010
Mensajes: 12
Antigüedad: 14 años
Puntos: 0
Pregunta Cuestionario y campos de autocompletar

Hola q tal este es mi primer post y tambien entrandome en el mundo de la programacion y me agradeceria mucho su colaboracion para una pequela aplicacion

lo que quiero realizar çes un pequelo cuestionario que iria de la siguiente manera

. # | Pregunta | Si | No | Criterio | Factor | Resultado

entonces si yo respondo SI y escogo el Criterio que es un Select el factor me debe cambiar y asi para las otras combinaciones

respuesta citerio resultado
si | 0.0 | 1
si | 0.5 | 2
no | 0.0 | 5
etc..


lo estoy haciendo por medio de un onchange y funciona pero solo funciona para la primera pregunta y me gustario implementarlo para todas

Espero haberme explicado aqui les dejo el codigo

Código PHP:
<html>

<head>

<title>Lista de Chequeo</title>

<style type="text/css">


body,h1,h2,h3,p,td,quote,small,form,input,ul,li,ol,label{
    margin:0px;
    padding:0px;
    text-align: left;
}
body{
margin-top:20px;
font-family:Arial, Helvetica, sans-serif;
color:#51555C;
height:100%;
font-size:11px;
}
/* Form styles */

select{
width:auto;
padding:2px;
}
.formline{
padding:3px;
}
label{
font-size:11px;
text-align:right;
}
table{
    width:700px;
    text-align: left;
}
td{
    font-size:18px;
    text-align: center;
}
.input-container{
padding:1px;
}
#div-regForm,.registered{
border:3px solid #000;
padding:15px;
background:url(img/bg.jpg) repeat-x #fff;
color:#203360;
margin:30px auto 40px auto;
width:700px;
}
.form-title,
.form-sub-title{
    font-size:40px;
    font-family:"Lucida Grande",Tahoma,Verdana,Arial,sans-serif;
    font-size:30px;
    font-weight:bold;
}
.form-sub-title{
font-weight:normal;
padding:6px 0 15px 0;
}
.greenButton{
width:auto;
margin:10px 0 0 2px;
padding:3px 4px 3px 4px;
color:white;
background-color:#51555C;
outline:none;
border:1px solid #006600;
font-weight:bold;
}
.greenButton:active{
    background-color:#F00;
    padding:4px 3px 2px 5px;
    text-align: right;
}
#loading{
left:10px;
position:relative;
top:3px;
visibility:hidden;
}
#error{
    background-color:#ffebe8;
    border:1px solid #dd3c10;
    padding:7px 3px;
    text-align:right;
    margin-top:10px;
    visibility:hidden;
}

textarea {
font-weight:bold;
font-family:Arial, Helvetica, sans-serif;
color:#233345;
}    
 
textarea:focus {
border: 2px solid #09F;
}
</style>








<script>
function Pregunta1(auxsi)
{




var categoria = new Array();
//categoria = document.getElementById('tipo');
categoria= auxsi.value;

document.getElementById('hotel').style.display='none';
document.getElementById('pension').style.display='none';
document.getElementById('casarural').style.display='none';


switch(categoria)
{
case 'si':
document.getElementById('casarural').style.display='block';
break;
case "no":
document.getElementById('pension').style.display='block';
break;

categoria++;

}

}

</script>




<script>
function Pregunta2(criterio)
{

var auxotra = 0;
    //var auxcri = 0;
    var auxcri = new Array();
    var categoria = new Array();
    while (auxotra<6)
    {
    auxcri = criterio.value;
        

//categoria = document.getElementById('tipo');
categoria= auxcri;

document.getElementById('fac0').style.display='none';
document.getElementById('facx').style.display='none';
//document.getElementById('casarural').style.display='none';


switch(categoria)
{
case 'si':
document.getElementById('fac0').style.display='block';
break;
case "no":
document.getElementById('fac0').style.display='block';
break;

categoria++;

}

auxotra ++;
auxcri ++;

}

}

</script>

</head>
<body>
<?php

include("conexion.php");
$linkconexion();
mysql_query ("SET NAMES 'utf8'");

?>
<div id="div-regForm">

<form name="formulario" method="post" action="GLCAFisica.php">
<div class="form-title">Lista de Chequeo</div>
<div class="form-sub-title"></div>

<br>
<table>
<tr><td>Identificacion</td><td>Fecha</td></tr>
<tr><td><input type="text" name="identificacion" placeholder="Identificacion  Empresa" /></td><td><input type="text" name="fecha" placeholder="A�o-Mes-Dia" /></td></tr>
</table>
<br> 
<table width="750"  border="1">
    <tr>
      <td width="5">.#</td>
      <td width="150">Pregunta</td>
      <td width="40">Si</td>
      <td width="40">No</td>
      <td width="50">  Criterio</td>
      <td width="70">Factor</td>
      <td width="50">Resultado</td>
    </tr>
  
  <br>

  
<?php

$auxsi 
0;
$id 0;


$busCmysql_query("select * from preguntas " ,$link)or die ("Error buscar Todas las matriculas".mysql_error());


while (
$busC1=mysql_fetch_array($busC))
{
    
//$id = $busC1[id];

 
echo
  <tr>
    <td >"
.$busC1[id]." </td>
    <td aling=center>"
.$busC1[nombre]."</td>
  <td > &nbsp; <input type = 'radio' name = "
.$auxsi." id = ".$auxsi." value = 'si'  /> <br></td>
  <td  >&nbsp; <input type = 'radio' name = "
.$auxsi." id = ".$auxsi." value = 'no'  /> <br></td> 
   
<td>
  <label><select name='criterio' onchange='Pregunta2(this)' > 
  <option >Sin Criterio</option>
  <option value=oi>0.0</option>
  <option value=si>0.5</option>
  <option value=no>1.0</option>
  </select>
  </label>
 
</td>


<td>
<div id='facx' align='center' style='display:block;'>
        <label>Sin Factor</label>
   </div>
   

   <div id='fac0' align='center' style='display:none;'>
        <label>Sin Criterio</label>
   </div>
</td>


<td>
<div id='resx' align='center' style='display:block;'>
        <label>Sin Resultado</label>
   </div>
   

   <div id='res0' align='center' style='display:none;'>
        <label>Sin Criterio</label>
   </div>
</td>

</tr>
 
 
 
 
 "
;
$id $id 1;
 
$auxsi $auxsi ;
  }
  
  
?>
  
  

  <tr>
  <td>
  <input type="submit" name="enviar" class="greenButton" value="Enviar">
  </td>
  </tr>
</table>
<p>&nbsp;</p>

</form>
</div>

</body>
</html>

Agradezeria mucho su colaboracion
  #2 (permalink)  
Antiguo 14/05/2012, 05:34
Avatar de diamari  
Fecha de Ingreso: marzo-2012
Mensajes: 95
Antigüedad: 12 años, 6 meses
Puntos: 30
Respuesta: Cuestionario y campos de autocompletar

Cuando tienes un problema de javascript y quieres ayuda con ella lo ideal es eliminar todo idioma ajeno lo cual no solo simplifica el problema, elimina ese otro como problema. Ademas puede ser que la persona que que te puede ayudar no tiene conocimiento de ese idioma o tiene en el momento como ejecutarlo para probar tu código ver donde es el problema.

¿En que navegador lo estas probando?
¿Has verificado si el navegador te tira algún error?
¿Has verificado si this esta devolviendo el elemento correcto (this puede ser problemático)?

No tengo tiempo ahora para extraer el html y javascript para probarlo. Pero eso te ayudara a empezar a resolver el problema. Yo verificara luego o a lo mejor alguien me adelante.
  #3 (permalink)  
Antiguo 15/05/2012, 05:30
Avatar de diamari  
Fecha de Ingreso: marzo-2012
Mensajes: 95
Antigüedad: 12 años, 6 meses
Puntos: 30
Respuesta: Cuestionario y campos de autocompletar

Una pregunta estas utilizando un función nuevo para cada uno? Si es así no es el mejor método. Si no pues tienes que refinar tu función para ser mas dinámico ya modifica valores estáticos.
  #4 (permalink)  
Antiguo 15/05/2012, 09:08
 
Fecha de Ingreso: septiembre-2010
Mensajes: 12
Antigüedad: 14 años
Puntos: 0
Respuesta: Cuestionario y campos de autocompletar

Ps no c que mas tenga q explicar
lo que quiero realizar çes un pequelo cuestionario que iria de la siguiente manera

. # | Pregunta | Si | No | Criterio | Factor | Resultado

entonces si yo respondo SI y escogo el Criterio que es un Select el factor me debe cambiar y asi para las otras combinaciones

ejemplo
si /no | citerio | resultado
si (se selecciona) | 0.0 (se selecciona) | 1 (se autocompleta)
si (se selecciona) | 0.5 (se selecciona) | 2 (se autocompleta)
no (se selecciona) | 0.0 (se selecciona) | 5 (se autocompleta)
etc..


el codigo q ya esta es q ando probando, pero si alguien me pudiera colaborar con otra funciona o otra forma de realizarlo me ayudaria mucho
  #5 (permalink)  
Antiguo 16/05/2012, 05:17
Avatar de diamari  
Fecha de Ingreso: marzo-2012
Mensajes: 95
Antigüedad: 12 años, 6 meses
Puntos: 30
Respuesta: Cuestionario y campos de autocompletar

Lo mas sencillo es hacer que tu función reciba el id del recuadro donde va los resultados luego colocar lo mismos en el con innerHTML o value (depende del elemento que vas a usar) en vez de poblar tu código de elementos innecesarios y utilizar display.

Etiquetas: campos, cuestionario, formulario, funcion, html, input, php, autocompletado
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 20:39.