Foros del Web » Programando para Internet » Javascript »

Habilitar caja de texto de acuerdo a estado en el combo box.

Estas en el tema de Habilitar caja de texto de acuerdo a estado en el combo box. en el foro de Javascript en Foros del Web. Holas a todos tengo una consulta como podria habilitar cajas segun el estado del combo box. Con un array lleno los datos. arrays.php $estados=array("ASIGNADO","BAJA","DA&NtildeADO","D EVUELTO","FIDELIZACION","IRREPARABLE","REPARADO ...
  #1 (permalink)  
Antiguo 21/12/2009, 09:45
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 15 años
Puntos: 0
De acuerdo Habilitar caja de texto de acuerdo a estado en el combo box.

Holas a todos tengo una consulta como podria habilitar cajas segun el estado del combo box.

Con un array lleno los datos.

arrays.php

$estados=array("ASIGNADO","BAJA","DA&NtildeADO","D EVUELTO","FIDELIZACION","IRREPARABLE","REPARADO C/C","LIBRE","PARA INTERNAR","PRESTADO","ROBADO","REPARADO S/C","INTERNADO");

celulares.php

para modificar el celular
<?php if($opcion=="modificar_celulares") {
if(isset($_SESSION["lista_celularesb"])) {
$val_celular=$_SESSION["lista_celularesb"];
unset($_SESSION["lista_celularesb"]);
$x=$val_celular[0]["num_celular"];
}
?>

con esta consulta saco el determinado estado para editarlo..

<td><select name="cboestadoe" id="cboestadoe" >
<?php
for($e=0;$estados[$e];$e++){
echo "<option value='$estados[$e]'>$estados[$e]</option>";
}
$mestado=mysql_query("Select estado from celulares where num_celular=".$x);
while ($row_estado=mysql_fetch_array($mestado)) {
$estado = $row_estado["estado"];
echo "<option value=\"$estado\"";
//ponemos el que esté seleccionado
if ($cboestadocel==$cboestadocel_seleccionado) { echo "selected"; }
echo ">$estado</option>";}
?>
</select></td>

Ahora por ejemplo si el estado a editar ejemplo sale robado..

Quiero que se habilite una caja ejemplo

ordenst_txt

y que se desibilite

precio_ost_txt

como puedo hacer eso....
  #2 (permalink)  
Antiguo 21/12/2009, 09:55
 
Fecha de Ingreso: abril-2008
Mensajes: 435
Antigüedad: 16 años
Puntos: 10
Respuesta: Habilitar caja de texto de acuerdo a estado en el combo box.

javascript
  #3 (permalink)  
Antiguo 21/12/2009, 09:56
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 14 años, 6 meses
Puntos: 265
Respuesta: Habilitar caja de texto de acuerdo a estado en el combo box.

Estas cosas no las podes hacer con PHP, tenes que usar Javascript para ello.

Tenes que ponerle una funcion al evento onchange del select, y dependiendo del valor actual hacer el cambio que mencionas o no...pero con PHP no tiene mucho que ver esto.

Saludos.
  #4 (permalink)  
Antiguo 21/12/2009, 10:00
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 15 años
Puntos: 0
Respuesta: Habilitar caja de texto de acuerdo a estado en el combo box.

Eso lo eh probado y naa
  #5 (permalink)  
Antiguo 21/12/2009, 10:03
Avatar de MarioAraque
Colaborador
 
Fecha de Ingreso: octubre-2009
Ubicación: Valencia
Mensajes: 1.398
Antigüedad: 14 años, 6 meses
Puntos: 265
Respuesta: Habilitar caja de texto de acuerdo a estado en el combo box.

Yo en tu codigo no veo nada de Javascript, si queres nos mostras lo que programaste ahi y lo pulimos para que te funcione.

Pero con PHP no lo vas a poder hacer, eso seguro.

Saludos.
  #6 (permalink)  
Antiguo 21/12/2009, 10:08
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 15 años
Puntos: 0
Respuesta: Habilitar caja de texto de acuerdo a estado en el combo box.

Ya lo se ahora voy a postear mi codigo con el javascript creo que el problema radica ya que en el action va esto.

<form action="../controler/celulares_controler.php?codi=<?=$val_celular[0]["num_celular"]?>" name="fmrecelulares" method="post" onSubmit="return validar_editar_celular();" >

mi codigo de javascript

<script language="JavaScript">
function habilitar_cajas(){
switch(document.forms[0].cboestadoe.selectedIndex){
case 0:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=true;
document.forms[0].txt_frecojoe.disabled=true;
document.forms[0].txt_precogee.disabled=true;
document.forms[0].txt_documentoe.disabled=true;
document.forms[0].txt_fechainternamientoe.disabled=true;
break;
case 1:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=true;
document.forms[0].txt_frecojoe.disabled=true;
document.forms[0].txt_precogee.disabled=true;
document.forms[0].txt_documentoe.disabled=true;
document.forms[0].txt_fechainternamientoe.disabled=true;

break;
case 2:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=false;
document.forms[0].txt_frecojoe.disabled=false;
document.forms[0].txt_precogee.disabled=false;
document.forms[0].txt_documentoe.disabled=false;
document.forms[0].txt_fechainternamientoe.disabled=true;

break;
case 3:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=false;
document.forms[0].txt_frecojoe.disabled=false;
document.forms[0].txt_precogee.disabled=false;
document.forms[0].txt_documentoe.disabled=false;
document.forms[0].txt_fechainternamientoe.disabled=true;

break;
case 4:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=true;
document.forms[0].txt_frecojoe.disabled=true;
document.forms[0].txt_precogee.disabled=true;
document.forms[0].txt_documentoe.disabled=true;
document.forms[0].txt_fechainternamientoe.disabled=true;

break;

case 5:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=false;
document.forms[0].txt_frecojoe.disabled=false;
document.forms[0].txt_precogee.disabled=false;
document.forms[0].txt_documentoe.disabled=false;
document.forms[0].txt_fechainternamientoe.disabled=true;

break;

case 6:
document.forms[0].txtorden_ste.disabled=false;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=true;
document.forms[0].txt_frecojoe.disabled=true;
document.forms[0].txt_precogee.disabled=true;
document.forms[0].txt_documentoe.disabled=true;
document.forms[0].txt_fechainternamientoe.disabled=false;

break;
case 7:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=true;
document.forms[0].txt_frecojoe.disabled=true;
document.forms[0].txt_precogee.disabled=true;
document.forms[0].txt_documentoe.disabled=true;
document.forms[0].txt_fechainternamientoe.disabled=true;

break;
case 8:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=false;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=false;
document.forms[0].txt_frecojoe.disabled=true;
document.forms[0].txt_precogee.disabled=true;
document.forms[0].txt_documentoe.disabled=true;
document.forms[0].txt_fechainternamientoe.disabled=true;

break;
case 9:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=true;
document.forms[0].txt_frecojoe.disabled=true;
document.forms[0].txt_precogee.disabled=true;
document.forms[0].txt_documentoe.disabled=true;
document.forms[0].txt_fechainternamientoe.disabled=true;

break;
case 10:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=true;
document.forms[0].txt_frecojoe.disabled=true;
document.forms[0].txt_precogee.disabled=true;
document.forms[0].txt_documentoe.disabled=true;
document.forms[0].txt_fechainternamientoe.disabled=true;

break;
case 11:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=true;
document.forms[0].txt_frecojoe.disabled=true;
document.forms[0].txt_precogee.disabled=true;
document.forms[0].txt_documentoe.disabled=true;
document.forms[0].txt_fechainternamientoe.disabled=true;

break;
case 12:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=false;
document.forms[0].txt_frecojoe.disabled=false;
document.forms[0].txt_precogee.disabled=false;
document.forms[0].txt_documentoe.disabled=false;
document.forms[0].txt_fechainternamientoe.disabled=true;
break;
case 13:
document.forms[0].txtorden_ste.disabled=true;
document.forms[0].txt_lcreditoe.disabled=true;
document.forms[0].txt_averiae.disabled=false;
document.forms[0].txt_diagnosticoe.disabled=true;
document.forms[0].txt_frecojoe.disabled=true;
document.forms[0].txt_precogee.disabled=true;
document.forms[0].txt_documentoe.disabled=true;
document.forms[0].txt_fechainternamientoe.disabled=true;
break;
}
}
</script>


el del php

<td>Estado</td>
<td><select name="cboestadoe" id="cboestadoe" onChange="habilitar_cajas()">
<?php
for($e=0;$estados[$e];$e++){
echo "<option value='$estados[$e]'>$estados[$e]</option>";
}
$mestado=mysql_query("Select estado from celulares where num_celular=".$x);
while ($row_estado=mysql_fetch_array($mestado)) {
$estado = $row_estado["estado"];
echo "<option value=\"$estado\"";
//ponemos el que esté seleccionado
if ($cboestadocel==$cboestadocel_seleccionado) { echo "selected"; }
echo ">$estado</option>";}
?>
</select></td>
  #7 (permalink)  
Antiguo 21/12/2009, 11:18
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Tema movido desde PHP a Javascript
  #8 (permalink)  
Antiguo 21/12/2009, 17:05
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 15 años
Puntos: 0
Respuesta: Habilitar caja de texto de acuerdo a estado en el combo box.

Alguna idea del porque no se me desabilitan las cajas de texto en determinada opcion del combo.
  #9 (permalink)  
Antiguo 23/12/2009, 08:32
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 15 años
Puntos: 0
Respuesta: Habilitar caja de texto de acuerdo a estado en el combo box.

MMM quien me puede apoyar con este tema.... que es un delirio.
  #10 (permalink)  
Antiguo 29/12/2009, 16:11
Avatar de dquispe  
Fecha de Ingreso: mayo-2009
Ubicación: Lima
Mensajes: 232
Antigüedad: 15 años
Puntos: 0
De acuerdo Respuesta: Habilitar caja de texto de acuerdo a estado en el combo box.

Bueno a qui les muestro la solution que le di a este delirio.
Creo una function para habilitar la caja de texto que deseo.
Segun opcion del combo.


<script>
function habilitar(){
if($('#cboestadoe').val()=="ASIGNADO"){
$("#txt_averiae").attr("disabled",false);
}
if($('#cboestadoe').val()=="BAJA"){
$("#txt_averiae").attr("disabled",false);
$("#txtorden_ste").attr("disabled",false);
}
if($('#cboestadoe').val()=="DEVUELTO"){
$("#txt_averiae").attr("disabled",false);
$("#txt_diagnosticoe").attr("disabled",false);
$("#txt_frecojoe").attr("disabled",false);
}
if($('#cboestadoe').val()=="FIDELIZACION"){
$("#txt_diagnosticoe").attr("disabled",false);
}
if($('#cboestadoe').val()=="IRREPARABLE"){
$("#txt_averiae").attr("disabled",false);
$("#txt_diagnosticoe").attr("disabled",false);
$("#txt_frecojoe").attr("disabled",false);
$("#txt_precogee").attr("disabled",false);
$("#txt_documentoe").attr("disabled",false);
}
if($('#cboestadoe').val()=="REPARADO C/C"){
$("#txtorden_ste").attr("disabled",false);
$("#txt_fechainternamientoe").attr("disabled",fals e);
$("#txt_averiae").attr("disabled",false);
}
if($('#cboestadoe').val()=="LIBRE"){
$("#txt_averiae").attr("disabled",false);
}
if($('#cboestadoe').val()=="PARA INTERNAR"){
$("#txt_lcreditoe").attr("disabled",false);
$("#txt_averiae").attr("disabled",false);
$("#txt_diagnosticoe").attr("disabled",false);
}
if($('#cboestadoe').val()=="PRESTADO"){
$("#txt_averiae").attr("disabled",false);
}
if($('#cboestadoe').val()=="ROBADO"){
$("#txt_averiae").attr("disabled",false);
}
if($('#cboestadoe').val()=="REPARADO S/C"){
$("#txt_averiae").attr("disabled",false);
}
if($('#cboestadoe').val()=="INTERNADO"){
$("#txt_averiae").attr("disabled",false);
}
}
</script>

Llamando con el onchange la function...

<td>Estado</td>
<td><select name="cboestadoe" id="cboestadoe" onChange="habilitar()">
<?php
for($e=0;$estados[$e];$e++){
echo "<option value='$estados[$e]'>$estados[$e]</option>";
}
$mestado=mysql_query("Select estado from celulares where num_celular=".$x);
while ($row_estado=mysql_fetch_array($mestado)) {
$estado = $row_estado["estado"];
echo "<option value=\"$estado\"";
//ponemos el que esté seleccionado
if ($cboestadocel==$cboestadocel_seleccionado) { echo "selected"; }
echo ">$estado</option>";}
?>
</select></td>

Bueno me falta unos detalles pro ah va marchando bien..
GRacias d todas maneraasssss
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 08:29.