Ir para conteúdo
Fórum Script Brasil
  • 0

Desabilitar Inputs baseado em evento Click de RadioButton


Fernando C Moreira

Pergunta

Bom dia pessoal! Estou desenvolvendo um sistema para criação de provas, e estou criando uma tela para editar as questões criadas e que já estão salvas no banco de dados. Ao selecionar a questão existem dois radio buttons que buscam no banco de dados o tipo da questão (Dissertativa ou Objetiva) de acordo com o tipo já cadastrado na tela de criação da questão. Ou seja ele busca o valor no banco e marca o radio button conforme o tipo da questão. Se a questão é Objetiva o sistema habilita o campo enunciado e as alternativas de A a E. E se for Dissertativa ele desabilita as alternativas e habilita o enunciado. O que está acontecendo é que se a questão é Dissertativa o sistema busca os dados e desabilita as alternativas e se eu buscar a questão como objetiva ele vem selecionado o radio button objetiva e o campo de Enunciado ele habilita, mas as Alternativas ele não habilita. Segue estrutura do código:

function disableAlternativas() {
            document.getElementById('enunciado').disabled=false;
            document.getElementById('resposta_A').disabled=true;
            document.getElementById('resposta_B').disabled=true;
            document.getElementById('resposta_C').disabled=true;
            document.getElementById('resposta_D').disabled=true;
            document.getElementById('resposta_E').disabled=true; 
        }

        function enableAlternativas() {
            document.getElementById('enunciado').disabled=false;
            document.getElementById('resposta_A').disabled=false;
            document.getElementById('resposta_B').disabled=false;
            document.getElementById('resposta_C').disabled=false;
            document.getElementById('resposta_E').disabled=false;
            document.getElementById('resposta_D').disabled=false;
        }
<form method="POST"><br>
        <span class="login100-form-title p-70">Editar Questão Cadastrada</span><br>
            <center>

                <div class="form-check">
                    <input class="form-check-input" type="radio" name="tipo" id="rbDissertativa" value="D" required <?php echo ($tipo == 'D') ? 'checked' : ''; ?> onclick="disableAlternativas(), limpaCampo()"> 
                    <label class="form-check-label" for="dissertativa">Dissertativa</label>
               </div>

               <div class="form-check">
                   <input class="form-check-input" type="radio" name="tipo" id="rbObjetiva" value="O" required <?php echo ($tipo == 'O') ? 'checked' : ''; ?> onclick="enableAlternativas()">  
                   <label class="form-check-label" for="objetiva" >Objetiva</label>
               </div>

                <label for="enunciado">Enunciado: </label>
                <input type="text" id="enunciado" class="col-sm-6 col-form-label" name="enunciado" size="500" maxlength="500" placeholder="Enunciado" value="<?php echo $enunciado; ?>" <?php echo $podeAlterar; ?>><br><br>
       
                <label for="a">A) </label>
                <input type="text" id="resposta_A" class="col-sm-6 col-form-label" name="resposta_A" size="200" maxlength="200" placeholder="Alternativa A" value="<?php echo $resposta_A; ?>" <?php echo $podeAlterar; ?> disabled><br><br>

                <label for="b">B) </label>
                <input type="text" id="resposta_B" class="col-sm-6 col-form-label" name="resposta_B" size="200" maxlength="200" placeholder="Alternativa B" value="<?php echo $resposta_B; ?>" <?php echo $podeAlterar; ?> disabled><br><br>

                <label for="c">C) </label>
                <input type="text" id="resposta_C" class="col-sm-6 col-form-label" name="resposta_C" size="200" maxlength="200" placeholder="Alternativa C" value="<?php echo $resposta_C; ?>" <?php echo $podeAlterar; ?> disabled><br><br>

                <label for="d">D) </label>
                <input type="text" id="resposta_D" class="col-sm-6 col-form-label" name="resposta_D" size="200" maxlength="200" placeholder="Alternativa D" value="<?php echo $resposta_D; ?>" <?php echo $podeAlterar; ?> disabled><br><br>

                <label for="e">E) </label>
                <input type="text" id="resposta_E" class="col-sm-6 col-form-label" name="resposta_E" size="200" maxlength="200" placeholder="Alternativa E" value="<?php echo $resposta_E; ?>" <?php echo $podeAlterar; ?> disabled><br><br>

                <div>
                    <input type="hidden" name="idquestao" value="<?php echo $idquestao; ?>">
                    <a href="questao.php" class="btn btn-dark">Cancelar</a>
                    <input type="submit" tabindex="1" class="btn btn-dark" name="acao" value="<?php echo $descr_acao; ?>" <?php echo $podeAlterar; ?> >
                </div>
            </center>
    </form>

Se alguém puder me ajudar eu agradeço.

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...