Autor Tema: Personalizar una encuesta nueva  (Leído 4301 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Nerina

  • General Guarani
  • *
  • Mensajes: 65
    • Ver Perfil
    • Email
  • Institución: UNR (Sede de Gobierno)
  • Nombre y apellido: Nerina López
  • Sistema: Guarani - Kolla - Araucano
Personalizar una encuesta nueva
« on: Junio 14, 2011, 01:48:04 pm »
Hola!
Estoy utilizando el Kolla para lanzar una encuesta especial y necesito que esté personalizada. Mis dos dudas son las siguientes:
1) Cómo hacer para que al seleccionar una respuesta determinada de un combo, se deshabiliten responder otras preguntas almacenando en la Base de Datos algo determinado.
2) Cómo hacer para que  cuando se seleccione un botón de opción, se vea y permita escribir en un casillero de texto. Y si se selecciona otro botón al casillero no esté visible.

Muchas Gracias
Saludos cordiales,   Nerina
UNR - Dirección de Estadística Universitaria

Carolina Belmonte

  • General
  • *
  • Mensajes: 787
    • MSN Messenger - caro_bel45@hotmail.com
    • Ver Perfil
    • Email
  • Institución: Universidad Nacional de Entre Ríos
  • Nombre y apellido: Carolina Belmonte
  • Sistema: Comdoc-Kolla-Tehuelche-Toba
  • Teléfono laboral: (03442) 421539
Re: Personalizar una encuesta nueva
« Respuesta #1 on: Junio 16, 2011, 08:51:05 am »
Nerina, algo parecido consulte yo. Fijate en el tópico MUG LOCALIDADES la ultima respuesta.

Saludos

M Clara Casalini

  • Moderador Global
  • *****
  • Mensajes: 860
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: M. Clara Casalini
  • Sistema: Kolla
  • Teléfono laboral: -sin teléfono actualmente-
Re: Personalizar una encuesta nueva
« Respuesta #2 on: Junio 16, 2011, 03:28:18 pm »
Perdón por la demora en responder.
En el ejemplo que te había mandado por mail había este tipo de personalizaciones. En todos los casos lo primero que tenés que hacer es identificar el id del elemento de respuesta que querés controlar y del que queres modificar. Explico un poco sobre cada una de las preguntas:

1) En este caso tenes que controlar el valor del elemento durante la carga de la encuesta, y cada vez que su valor cambie:
 
Código: [Seleccionar]
... if (pregunta_combo.value==nolee) ...  y luego habilitar/deshabilitar los otros elementos según desees:
 
Código: [Seleccionar]
... otra_pregunta.disabled = true; ...  si querés asegurarte que en ese elemento se carga un valor determinado -por ejemplo si era un cuadro de texto querés que vaya vacío-:
 
Código: [Seleccionar]
... otra_pregunta.value = 0; ...      
2) De manera similar al caso anterior, cuando la respuesta es de tipo checkbox, lo que chequeas es su propiedad "checked":
 
Código: [Seleccionar]
... if (boton_opcion.checked == true) ...  para hacer visible o no visible parte de la encuesta, tenes que ocultar el elemento de la pregunta y el elemento de la respuesta:
 
Código: [Seleccionar]
... preguntaX.style.display = ''; ... 
Código: [Seleccionar]
... respuestaX.style.display = ''; ...

Las propiedades, atributos, funciones, ... a utilizar pueden variar según el tipo de elemento html que se está utilizando. Para esto una excelente fuente de información es el sitio: http://www.w3schools.com/js/default.asp

Nerina

  • General Guarani
  • *
  • Mensajes: 65
    • Ver Perfil
    • Email
  • Institución: UNR (Sede de Gobierno)
  • Nombre y apellido: Nerina López
  • Sistema: Guarani - Kolla - Araucano
Re: Personalizar una encuesta nueva
« Respuesta #3 on: Junio 17, 2011, 03:11:28 pm »
Muchas gracias.. este finde lo pruebo y comento.
Saludos!
Nerina

Nerina

  • General Guarani
  • *
  • Mensajes: 65
    • Ver Perfil
    • Email
  • Institución: UNR (Sede de Gobierno)
  • Nombre y apellido: Nerina López
  • Sistema: Guarani - Kolla - Araucano
Re: Personalizar una encuesta nueva
« Respuesta #4 on: Junio 21, 2011, 08:47:53 pm »
Clara, tengo una duda mas, recién hoy lo pude probar.. pero me encontré con que si pongo: <pregunta>.checked == true  como condición, evalua si está seleccionado o no, pero no pudo identificar qué valor tiene marcado...
Quizas esté haciendo algo mal con los identificadores, me podes aclarar un poco estos punto, muchas gracias!!
Saludos
Nerina

M Clara Casalini

  • Moderador Global
  • *****
  • Mensajes: 860
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: M. Clara Casalini
  • Sistema: Kolla
  • Teléfono laboral: -sin teléfono actualmente-
Re: Personalizar una encuesta nueva
« Respuesta #5 on: Junio 22, 2011, 02:01:44 pm »
Hola Nerina,
cada una de las opciones que se dan en una pregunta de múltiples checkbox tiene un id distinto asociado. Tendrías que usar el id de la opción que queres controlar, la que está asociada al valor que buscas.
Saludos.

Nerina

  • General Guarani
  • *
  • Mensajes: 65
    • Ver Perfil
    • Email
  • Institución: UNR (Sede de Gobierno)
  • Nombre y apellido: Nerina López
  • Sistema: Guarani - Kolla - Araucano
Re: Personalizar una encuesta nueva
« Respuesta #6 on: Junio 22, 2011, 02:06:58 pm »
Hola Clara, lo que me parece que estoy haciendo mal es la forma en que obtengo el ID...
Cómo obtengo el ID de cada elemento?
Muchas gracias!! saludos
Nerina

M Clara Casalini

  • Moderador Global
  • *****
  • Mensajes: 860
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: M. Clara Casalini
  • Sistema: Kolla
  • Teléfono laboral: -sin teléfono actualmente-
Re: Personalizar una encuesta nueva
« Respuesta #7 on: Junio 22, 2011, 02:47:31 pm »
Como regla general, el id de cada elemento de la encuesta tiene la siguiente forma:
c<id_encuesta>_<id_bloque>_<nro_pregunta>_<id_pregunta>
pero en las preguntas cuya respuesta está compuesta por múltiples elementos esto puede cambiar, por ejemplo en las preguntas con multiples checkbox el id de la pregunta termina con "[]" y a los ids de cada una de las opciones se les agrega un digito más, consecutivo y contando desde 0.
Lo mejor para estar completamente seguro del id que necesitas es mirar el código fuente de la página generada por la encuesta y buscar el elemento que queres identificar.

Nerina

  • General Guarani
  • *
  • Mensajes: 65
    • Ver Perfil
    • Email
  • Institución: UNR (Sede de Gobierno)
  • Nombre y apellido: Nerina López
  • Sistema: Guarani - Kolla - Araucano
Re: Personalizar una encuesta nueva
« Respuesta #8 on: Junio 22, 2011, 02:56:55 pm »
El problema que tengo es que el código fuente está en un servidor que no pudo ver desde mi pc, etc, etc.. por eso intento hacerlo armándola yo misma.. de todas maneras.. me faltaba los [] con el número de elemento. Hoy mismo lo pruebo....y te comento...
Muchas Gracias!!  Saludos!
Nerina


M Clara Casalini

  • Moderador Global
  • *****
  • Mensajes: 860
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: M. Clara Casalini
  • Sistema: Kolla
  • Teléfono laboral: -sin teléfono actualmente-
Re: Personalizar una encuesta nueva
« Respuesta #9 on: Junio 22, 2011, 03:10:01 pm »
No me refiero a las fuentes del proyecto, sino al codigo html que forma la página cuando la navegás. Si podes navegar la encuesta como si fueras un encuestado que la va a completar (que asumo que podes, ya que de esa manera debes estar controlando si funciona o no tu javascript) entonces podes ver el código que la genera. Esto se puede ver normalmente haciendo click con el botón derecho sobre la página, aparece la opción "ver código fuente de la página".
Si trabajas en firefox (o chrome también) te recomiendo una aplicación llamada Firebug, es muy útil para desarrolladores, sobre todo para trabajar con javascript.

Nerina

  • General Guarani
  • *
  • Mensajes: 65
    • Ver Perfil
    • Email
  • Institución: UNR (Sede de Gobierno)
  • Nombre y apellido: Nerina López
  • Sistema: Guarani - Kolla - Araucano
Re: Personalizar una encuesta nueva
« Respuesta #10 on: Junio 22, 2011, 03:17:03 pm »
ah.. interpreté mal..
Ahora estoy viendo el código completo.. y puedo ver bien los ID...voy a instalar el firebug de todas formas.. gracias!

Nerina

  • General Guarani
  • *
  • Mensajes: 65
    • Ver Perfil
    • Email
  • Institución: UNR (Sede de Gobierno)
  • Nombre y apellido: Nerina López
  • Sistema: Guarani - Kolla - Araucano
Re: Personalizar una encuesta nueva
« Respuesta #11 on: Junio 22, 2011, 10:49:26 pm »
Hola.. estuve probando lo que me decis...
Acá te paso la partecita donde se identifican los ID

<td width="250px">
<td class="abm-fila">
<fieldset id="fsc3_208_5_1005" class="ef_radio" name="c3_208_5_1005">
<input id="c3_208_5_1005" type="radio" value="53" name="c3_208_5_1005">
Si


<input id="c3_208_5_1005" type="radio" value="54" name="c3_208_5_1005" checked="">
No


</fieldset>
</td>


y como no parace tener la forma de array me generó dudas... de todas formas hice lo siguiente como para probar:

var tuvo_dificultad = document.getElementById('c3_208_5_1005');   
var cual_dificultad = document.getElementById('c3_208_6_1006');

function acciones_tuvo_dificultad()
   {
      if (tuvo_dificultad.checked == true) {
         cual_dificultad.value = "decime cual!!!!!";
         cual_dificultad.style.display = 'inline'
         cual_dificultad.disabled = false;
      } else {
         cual_dificultad.value = "que bueno =))";
         cual_dificultad.disabled = true;
      }
   }
   
if ((tuvo_dificultad!=null) ) acciones_tuvo_dificultad();

tuvo_dificultad.onchange = function()
{
   acciones_tuvo_dificultad();
}   


El tema es que si le agrgo el dígito como me decis no funciona porque no lo reconocería supongo...
Y esto funciona siempre y cuando grabe la encuenta...
Qué me está faltando??
Gracias


M Clara Casalini

  • Moderador Global
  • *****
  • Mensajes: 860
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: M. Clara Casalini
  • Sistema: Kolla
  • Teléfono laboral: -sin teléfono actualmente-
Re: Personalizar una encuesta nueva
« Respuesta #12 on: Junio 27, 2011, 03:24:13 pm »
El ejemplo que te di era de un checkbox, el código que me estas mostrando parece ser de un radio button (o grupo de radio buttons?). Como verás también se etiquetan distinto y tienen otras propiedades. En este caso el id de todas las opciones es el mismo (y tambien la propiedad name).
Dependiendo de lo que querés lograr tenes que ver cómo te conviene accederlo.

Nerina

  • General Guarani
  • *
  • Mensajes: 65
    • Ver Perfil
    • Email
  • Institución: UNR (Sede de Gobierno)
  • Nombre y apellido: Nerina López
  • Sistema: Guarani - Kolla - Araucano
Re: Personalizar una encuesta nueva
« Respuesta #13 on: Junio 27, 2011, 04:53:52 pm »
Hola Clara, como te decía es un botón...
Mi consulta era: Cómo hacer para que  cuando se seleccione un botón de opción, se vea y permita escribir en un casillero de texto. Y si se selecciona otro botón al casillero no esté visible.
El tema es que no puedo tratarlo como array de opciones porque tienen el mismo nombre y ningún índice... entonces probé con la propiedad value y tampoco funcionaba, etc, etc...  estuve viendo sentencias de Java Script por internet pero no puedo resolverlo... algo estoy haciendo mal y no me estoy dando cuenta...
Necesitaría resolverlo, desde ya muchas gracias
Saludos

M Clara Casalini

  • Moderador Global
  • *****
  • Mensajes: 860
    • Ver Perfil
  • Institución: SIU
  • Nombre y apellido: M. Clara Casalini
  • Sistema: Kolla
  • Teléfono laboral: -sin teléfono actualmente-
Re: Personalizar una encuesta nueva
« Respuesta #14 on: Junio 27, 2011, 05:55:02 pm »
En ese caso, como todos tienen el mismo nombre, podes usar "getElementsByName()" para obtener un arreglo con todos los elementos que tienen ese nombre. Luego podes recorrer ese arreglo hasta encontrar el que tiene el valor que vos buscas y según el estado (chequeado o no) determinas la acción a realizar.