Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

generar cadena aleatoria

  • ricardosam56
  • ricardosam56's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
1 month 4 days ago #268078 by ricardosam56
generar cadena aleatoria was created by ricardosam56
Ayúdenos a ayudarle y rellene los siguientes campos:.
Su versión de LimeSurvey: 5.6.47
Servidor propio o LimeSurvey Cloud: propio
Plantilla de diseño utilizada:
==================
con el código de abajo puedo poner una cadena aleatoria que salga como una alerta, en la sección de script de la propia pregunta
pero quiero que esa cadena aparezca en el enunciado o la ayuda de la propia oregunta 
G05Q17 es el código de la pregunta


function generarCadenaAleatoria(longitud) {
    const caracteres = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789@#$%&";
    let cadenaAleatoria = "";
    for (let i = 0; i < longitud; i++) {
        const indiceAleatorio = Math.floor(Math.random() * caracteres.length);
        cadenaAleatoria += caracteres.charAt(indiceAleatorio);
    }
    return cadenaAleatoria;
}

// Genera la cadena y la muestra en una ventana emergente
const longitudDeseada = 16;
alert("Cadena generada: " + generarCadenaAleatoria(longitudDeseada));

 

Please Log in to join the conversation.

  • Joffm
  • Joffm's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
1 month 3 days ago #268090 by Joffm
Replied by Joffm on topic generar cadena aleatoria
Hola,

Necesitas una pregunta para crear y guardar la cadena para que pueda aparecer en preguntas posteriores.
Pregunta tipo "texto corto" llamado "cadena"
Code:
<script type="text/javascript" charset="utf-8">
  $(document).on('ready pjax:scriptcomplete',function(){
      var thisQuestion = $('#question{QID}');
      const longitud = 16;
      const caracteres = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789@#$%&amp;";
      let cadenaAleatoria = "";
      for (let i = 0; i < longitud; i++) {
        const indiceAleatorio = Math.floor(Math.random() * caracteres.length);
        cadenaAleatoria += caracteres.charAt(indiceAleatorio);
      }
      $('input[type=text]', thisQuestion).val(cadenaAleatoria);      
  });
</script>

Pregunta esta escondido con clase css "hidden".

Y en otras preguntas muestra con ExpressionScript {cadena}
 

 

File Attachment:

File Name: limesurvey...3962.lss
File Size:36 KB


Joffm

Volunteers are not paid.
Not because they are worthless, but because they are priceless

Please Log in to join the conversation.

Moderators: holchtpartner

Lime-years ahead

Online-surveys for every purse and purpose