Foros del Web » Programando para Internet » Javascript »

Habilitar/Desabilitar Matriz de TextBox

Estas en el tema de Habilitar/Desabilitar Matriz de TextBox en el foro de Javascript en Foros del Web. Tengo una matriz de Textbox (Stock_Actual[i]) creados con un bucle en HTML, y al pulsar en un checkbox (Controlar_Stock) necesito que se habiliten o deshabiliten ...
  #1 (permalink)  
Antiguo 10/03/2016, 05:53
 
Fecha de Ingreso: marzo-2015
Mensajes: 2
Antigüedad: 9 años, 1 mes
Puntos: 0
Pregunta Habilitar/Desabilitar Matriz de TextBox

Tengo una matriz de Textbox (Stock_Actual[i]) creados con un bucle en HTML, y al pulsar en un checkbox (Controlar_Stock) necesito que se habiliten o deshabiliten segun el estado del checkbox, para lo cual he creado la siguiente función Javascript:

var Controlar_stocks=document.getElementById("Controla r_Stock").checked;
var i=0;
var cantidad = 3;

if (Controlar_stocks==true){
for (i=0 ; i<=cantidad-1; i++){
document.Form1.Stock_Actual[i].disabled=false
}
}
else{
for (i=0 ; i<=cantidad-1; i++){
document.Form1.Stock_Actual[i].disabled=true
alert (i + " Disabled")
}
}

Pero no me funciona.
Creo que simplemente no escribo bien el indice en el textbox (Stock_Actual)

¿Podeis ayudarme?
  #2 (permalink)  
Antiguo 10/03/2016, 06:40
 
Fecha de Ingreso: junio-2011
Mensajes: 289
Antigüedad: 12 años, 10 meses
Puntos: 15
Respuesta: Habilitar/Desabilitar Matriz de TextBox

Con el mismo alert puedes ir haciendo un debug simple.. Como es tu código de la matriz??
  #3 (permalink)  
Antiguo 10/03/2016, 10:42
 
Fecha de Ingreso: marzo-2015
Mensajes: 2
Antigüedad: 9 años, 1 mes
Puntos: 0
Respuesta: Habilitar/Desabilitar Matriz de TextBox

En la parte HTML/PHP genero tantos campos como registros obtenga de la consulta, y la idea es que solamente estén activados y permitan la interacción del usuario si el CheckBox "Controlar_Stock" está activado.

Esto lo he hecho muchas veces y me funciona sin problema con campos (textbox) sencillos, pero en cuanto he querido intentarlo con una matriz, no lo consigo. Por eso pienso que el problema está en la forma de indicar los indices.


$I=0;
$consulta= "SELECT * FROM centres where Te_Stock=1;";
$resultado= mysql_query("$consulta");
$num_resultados=mysql_num_rows($resultado);
while($filaencontrada=mysql_fetch_array($resultado )){
$Nom_Centre= $filaencontrada['Centre'];

//Para cada centro, preguntamos el stok de este articulo

?>
<tr>
<td class="Estilo2"> <? echo $Nom_Centre;?></td>
<td> <input name="Stock_Actual[<? echo $I;?>]" type="text" size="5" maxlength="5" ></td>
</tr>
<?
$I=$I+1;


}
  #4 (permalink)  
Antiguo 11/03/2016, 06:20
 
Fecha de Ingreso: junio-2011
Mensajes: 289
Antigüedad: 12 años, 10 meses
Puntos: 15
Respuesta: Habilitar/Desabilitar Matriz de TextBox

Estoy viendo que en el JS usas
Código Javascript:
Ver original
  1. var Controlar_stocks=document.getElementById("Controla r_Stock").checked;

Pero cuando creas el elemento utilizas el nombre y no declaras ningun ID
Código HTML:
Ver original
  1. <input name="Stock_Actual[<? echo $I;?>]" type="text" size="5" maxlength="5" >
  #5 (permalink)  
Antiguo 11/03/2016, 08:59
Avatar de IsaBelM
Colaborador
 
Fecha de Ingreso: junio-2008
Mensajes: 5.032
Antigüedad: 15 años, 10 meses
Puntos: 1012
Respuesta: Habilitar/Desabilitar Matriz de TextBox

Así se accede a los elementos de un formulario por su name https://developer.mozilla.org/es/doc...Document/forms
__________________
if(ViolenciaDeGénero) {alert('MUJER ASESINADA');}

Etiquetas: deshabilitar, disable, habilitar, matriz
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:27.