Foros del Web » Programando para Internet » Javascript »

Activación Cajas de Texto

Estas en el tema de Activación Cajas de Texto en el foro de Javascript en Foros del Web. Buenos Dias, me gustaria poder saber un script que me ayudara a activar o desactivar una caja de texto dependiendo de la elección que haya ...
  #1 (permalink)  
Antiguo 09/10/2003, 07:30
 
Fecha de Ingreso: agosto-2003
Ubicación: Venezuela
Mensajes: 82
Antigüedad: 20 años, 8 meses
Puntos: 0
Activación Cajas de Texto

Buenos Dias, me gustaria poder saber un script que me ayudara a activar o desactivar una caja de texto dependiendo de la elección que haya yo hecho en una caja de selección anterior a esta caja de texto.
Es decir, que tengo una caja de selección en la cual elijo una opción, seguidamente tengo una caja de texto que se debe activar o desactivar dependiendo de la eleccion elejida. Estoy seguro que se puede hacer, pero no se como, Gracias de Antemano!!!!!
__________________
Stand Tall and Shake the Heavens!!
http://www.sprache-language-venezuela.c-f-h.net
  #2 (permalink)  
Antiguo 09/10/2003, 07:53
Avatar de zero_sos  
Fecha de Ingreso: noviembre-2002
Ubicación: Santo Domingo
Mensajes: 128
Antigüedad: 21 años, 5 meses
Puntos: 0
Esto va a depender de como estes manejando tu codigo:

Por ejemplo, tu puedes decirle que al momento de que presiones un Radio button pues que haga visible una caja de texto y haga invisible otra como es este ejemplo:

onclick="document.forma.des.style.visibility='hidd en';document.forma.has.style.visibility='visible'; "

Ahora mismo no tengo mucho tiempo para explicarte detalladamente como puedes hacer lo que necesitas pero partiendo de este ejemplito creo que podrias hallarlo.

Si necesitas mas ayuda me avisas.

Dicha,


bye.
  #3 (permalink)  
Antiguo 09/10/2003, 10:09
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 4 meses
Puntos: 61
Completando un poco lo dicho por zero_sos (hola!!) te indico que se puede manejar la propiedad "disabled" con javascript. Sólo tenemos que localizar el input que queremos deshabilitar. Así, en una página con un solo formulario ponemos:
Código PHP:

document
.forms[0].nombredelcampo.disabled=true

En todo documento, javascript hace un Array con todos los formularios de la página, como sólo hay un formulario señalamos el primero (recuerda que Javascript empieza a enumerar con el 0) con forms[0]. Luego buscamos el campo con el nombre (name) que se le ha puesto. Y por último, una vez localizado el campo de decimos que su propiedad disabled (deshabilitado) sea cierta, es decir que la deshabilite. Si queremos habilitarla sólo tenemos que decirle que es falso, es decir: disabled=false.

Pero cómo hacemos para que pase de una a otra? Ya has dicho que te gustaría que fuera dependiendo de un combo. Cada option de un select tiene un value, así podríamos decir que si el value del select fuera uno que lo deshabilitara y si fuera otro que lo habilitara. Podría ser...
Código PHP:

if(document.forms[0].nombreDelSelect.value=="activo"){document.forms[0].nombreDelInput.disabled=false}
else{
document.forms[0].nombreDelInput.disabled=true

pero como podemos hacer qe salte esta sentencia? Lo podemos meter en una función para que lo ejecute cuando la llamemos. Así la llamariamos activar(), por ejemplo.
Código PHP:
function activar(){

if(
document.forms[0].nombreDelSelect.value=="activo"){document.forms[0].nombreDelInput.disabled=false}
else{
document.forms[0].nombreDelInput.disabled=true}



Pero y como hacer que se ejecute?

Podemos decirle al select que cuando cambie que llame a la función. ¿Cómo? así:

<select onchange="activar()">

Así estaría listo. Pero la función no termina de convencerme... seguro que hay una forma más fácil... y si ponemos:
Código PHP:
function activar(){
document.forms[0].nombreDelInput.disabled=(document.forms[0].nombreDelSelect.value==1)?true:false;


Con esto se dice que deshabilite o no según se cumpla la igualdad entre parentesis.

Con todos esto podríamos concluir que un ejemplo de esto podría ser:


Código PHP:
<html>
<
head>
<
style>
form,input,select{color:navy;
font:normal 10px/10px verdana;}
</
style>
<
script>
function 
activar(){
document.forms[0].texto.disabled=(document.forms[0].queHago.value==1)?true:false;
}
</script>
    <title>Untitled</title>
</head>

<body>
<form action="javascript:alert('Enviando')">
¿Qué hago? <select onchange="activar()" name="queHago">
<option value="0">Activar TextBox</option>
<option value="1">Desactivar TextBox</option>
</select><br>
Texto a introducir:<input type="Text" name="texto">
</form>


</body>
</html> 
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.

Última edición por KarlanKas; 09/10/2003 a las 10:12
  #4 (permalink)  
Antiguo 09/10/2003, 11:01
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola a todos:

Complentando lo complementado por KarlanKas de lo expuesto por zero_sos :

Tal vez lo que quieras es darle el foco, o habilitar el texto y después darle el foco, y lo puedes lograr sencillamente poniendo el_elemento.focus();
... o sea document.forms.nombreDelCampo.focus();

Saludos
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 20:39.