HTML - habilitar y deshabilitar campos

 
Vista:
Imágen de perfil de Antonio
Val: 1
Ha aumentado su posición en 14 puestos en HTML (en relación al último mes)
Gráfica de HTML

habilitar y deshabilitar campos

Publicado por Antonio (1 intervención) el 20/02/2018 17:01:25
estoy terminando un proyecto y quisiera ver la forma de habilitar y deshabilitar un campo de texto dependiendo del radiobutton que seleccione el usuario.

ya encontré un código en el foro y es lo que quiero solo que mi cuestionario se llena de un array que me trae las preguntas de una base de datos y esto ocasiona que al seleccionar un "no" me habilite todos los campos y yo solo quiero que habilite el campo de texto de la pregunta donde el usuario puso que "no".

este es mi formulario

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
//consulta que captura el texto , id de la tabla respuestas
$sql = "SELECT texto,id FROM respuestas WHERE idenc='$id'";
$sql = mysqli_query($conexion,$sql);
//ahora recorremos los datos texto, id que estan vinculadas a la cuenta seleccionada
while ($row = mysqli_fetch_array($sql)){
    $texto = $row["texto"];
    $idres = $row["id"];
    ?><tr>
      <!--  <td width="50"><input type="radio" name="opcion" value="<?php echo $idres; ?>" required</td> 
        <td width="470"><?php echo $texto; ?></td>-->
    <?php echo "<fieldset>
          <legend>".$texto."</legend>
          <label>
            <input type='radio' name='radio".$idres."' value='1' onclick='deshabilita()'> Si
          </label>
          <label>
              <input type='radio' name='radio".$idres."' value='0' onclick='habilita()'> No
          </label>
          <label>
              <textarea name='Hallazgo".$idres."' disabled class='inputText'>Se tiene un hallazgo? </textarea>
          </label>
         <label>
              <textarea name='Accion".$idres."' disabled class='inputText'>Cual es la acción correctiva </textarea>
          </label>
    </fieldset>"; ?>
    </tr>
<?php } ?>
<tr>

este es el codigo javascript

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<script language="JavaScript">
function habilita(){
    elementos=document.getElementsByClassName("inputText");
    for(var i = 0; i < elementos.length; i++)
    {
        elementos[i].disabled = false;
    }
}
 
function deshabilita(){
    elementos=document.getElementsByClassName("inputText");
    for(var i = 0; i < elementos.length; i++)
    {
        elementos[i].disabled = true;
    }
}
</script>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de santi
Val: 88
Ha aumentado 1 puesto en HTML (en relación al último mes)
Gráfica de HTML

habilitar y deshabilitar campos

Publicado por santi (31 intervenciones) el 23/02/2018 01:10:14
Hola,

igual con PHP puedes hacerlo:

1
2
<input type="radio" name="radio..." <?php echo($valor_de_la_bbdd == 1)?'checked':''; ?> />
<input type="radio" name="radio..." <?php echo($valor_de_la_bbdd == 0)?'checked':''; ?> />

De esta forma compruebas si el valor añadido en la bbdd es igual a uno de los inputs.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar