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
este es el codigo javascript
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


0