Ir para conteúdo
  • 0
CrysMorais

Como verificar se no questionário tem perguntas do tipo 'radio' ou 'checkbox'

Pergunta

Boa tarde pessoal,

Sou nova por aqui e também sou nova na programação, e gostaria da ajuda de alguém, se possível.

Eu montei uma pagina que cria questionários, onde o usuário  pode criar perguntas com 4 tipos de respostas (Radio, Checkbox, Text e Number).

Porém não sei como verificar se no questionário, foi criado pelo menos uma pergunta de cada tipo.

 

Montei assim:

 

<select name="tipoconsquestao" id="tipoconsquestao" style="color:#000000; font-size:9px; width:130px; ">
             <option value="1" selected >Única escolha</option>
             <option value="2">Múltipla escolha</option>
             <option value="3">Texto livre</option>
             <option value="4">Número livre</option>
</select>

 

Criei um bloco desses para cada tipo de pergunta:

 

<%if (ArrayQuestions(6,i) = 1) then%>

<td width="8%" align=center>
       <input name="<%=conta_grupo%>" data-sm-tipo="<%=ArrayQuestions(6,i)%>" data-sm-vrmaxquestao="<%=ArrayQuestions(11,i)%>" data-sm-questao-numero="<%=ArrayQuestions(2,i)%>"  data-sm- alternativa="<%=ArrayQuestions(3,i)%>" data-sm-questao="<%=conta_grupo%>" id="<%=conta_Alternativa%>" type="radio" value="<%=ArrayQuestions(3,i) %>" <%if ArrayQuestions(4,i) = 1 then response.write "checked"%>/>
</td>
<td width="92%" >&nbsp;&nbsp;&nbsp;<b><%=ArrayQuestions(1,i)%><b></td>
<% end if %>

 

 

Recebo aqui:

 

        var arrayquestoes = [];
        var arrayalternativas = [];
        var questionarioRadio = [];
        var questionarioCheck = [];
        var questionarioText = [];

        var questionarioNum = [];

 

for (var i = 1; i <= n_grupos; i++) {

            var countRadio = 0;
            var countCheck = 0;
            var countText = 0;
            var countVrText = 0;
            var countVariosVrText = 0;
            var countNum = 0;

            
            $("[data-sm-questao='" + i + "']").each(function (index, value) {

                var questao = $(this).attr("data-sm-questao-numero");
                var alternativa = $(this).attr("data-sm-alternativa");
                //alert(alternativa);

                var vralternativa = $(this).val();
                var tipoalternativa = $(this).attr("data-sm-tipo");
                

                
                vrmaxtotalizacao = $(this).attr("data-sm-vrmaxquestao");
                
                
                arrayquestoes[i - 1] = questao;
    
                //==============================================================================================================    
                // Verifica todos os campos tipo questão 1 (Radiobuttons) e carrega o array questionarioRadio com true ou false
                //==============================================================================================================  

                if (eval(tipoalternativa) == 1)
                {
                    if (this.checked) {
                        questionarioRadio[countRadio] = true;

                        if (textoalternativas == '') {
                            textoalternativas = questao + '|' + alternativa + '|' + 1;
                        }
                        else {
                            textoalternativas = textoalternativas + ';'+ questao + '|' + alternativa + '|' + 1;
                        }
                    }
                    else
                    {
                        questionarioRadio[countRadio] = false;
                    }

                    countRadio = countRadio + 1;
                    //console.log(cont);
                    
                }
 

 

    Faço a validação aqui:

 

          

 for (var k = 0; k < questionarioRadio.length; k++) {

            if (questionarioRadio[k])
            {
                if (!saidafinalRadio)
                {
                    saidafinalRadio = true;
                }
            }
        }

        if (questionarioRadio.length == 1)
        {
            saidafinalRadio = true;
        }

}

 

if (!saidafinalRadio)
        {
            alert('Por favor responda todas as questões de única escolha.');
            return;
        }

 

 

E mando para o banco de dados.

 

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

2 respostas a esta questão

Recommended Posts

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora

  • Conteúdo Similar

    • Por ILR master
      Fala pessoal, tudo bem?
       
      Tô tentando fazer um pre-loading, mas não consigo de jeito algum.
      Quero mostrar uma animação enquanto a página é carregada e depois de caregada, esconder a animação e mostrar conteúdo.
       
      Aguém pode me ajudar?
       
      Segue código abaixo
       
       
      <!DOCTYPE html>
      <html lang="pt-br">
      <head>
          <meta charset="utf-8">
          <meta name="viewport" content="width=device-width, initial-scale=1.0" />  
          <title>PÁGINA LOAD</title>

      <style type="text/css">
      .loadclass {
          border: 2px solid #f3f3f3; /* Light grey */
          border-top: 4px solid #ffc401; /* Blue */
          border-radius: 50%;
          width: 50px;
          height: 50px;
          animation: spin 2s linear infinite;
      }
      @keyframes spin {
          0% { transform: rotate(0deg); }
          100% { transform: rotate(360deg); }
      }
      .conteudo {
          display:none;
      }
      </style>
      <script>
          function loading(){
              document.getElementsByClassName('loadclass')[0].style.display="none";
              document.getElementsByClassName('conteudo').style.display="block";
          }
      </script>
      </head>
      <body onLoad="loading()">
      <div class="loadclass"></div>
      <div class="conteudo">SEU CONTEUDO AQUI DENTRO!!!</div>
      </body>
      </html>
    • Por ILR master
      Pessoal, pergunta bem simples. Abaixo tenho o seguinte código:
       
      <script>
      function alerta()
      {
        if (window.confirm("Você realmente quer sair?")) {
          window.open("sair.html");
      }
      }
      </script>
       
      Funciona perfeitamente, só que está abrindo em outra janela e quero que abra na mesma janela.
       
      Alguém pode me ajudar?
    • Por Giovanird
      Olá a todos!
      Tenho uma pagina que possui uma DIV onde coloquei uma pagina PHP.
      Uso a função setInterval para atualizar a pagina inclusa dentro da DIV.
      O problema é que ao acessar o site , a DIV só me mostra a pagina inclusa somente quando completo o primeiro minuto.
      Preciso que a pagina inclusa já inicie carregada
       
      Meu código JavaScript e a DIV com a pagina PHP
       
      <script> function atualiza(){ var url = 'direita.php'; $.get(url, function(dataReturn) { $('#direita').html(dataReturn); }); } setInterval("atualiza()",60000); </script> <div> <span id="direita"></span> </div>  
    • Por Thiago Duarte
      Oi, gostaria de arrastar imagem e ao soltar formar bloco html, meu bloco de html ficaria com nome, content-1.html, content-2.html, etc
       
      Alguem pode me ajudar?
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.