Foros del Web » Programando para Internet » Javascript »

habilitar un textarea con un radio

Estas en el tema de habilitar un textarea con un radio en el foro de Javascript en Foros del Web. tengo este form <form name='enviar' method='POST' action='pagina2.htm'> OPCION1<input type='radio' name='texto' value='texto1'><br> OPCION2<input type='radio' name='texto' value='texto2'><br> OPCION3<input type='radio' name='texto'><input type='text' name='texto' value='ponetexto'> </form> lo que pretendo ...
  #1 (permalink)  
Antiguo 14/01/2004, 14:47
Avatar de BatiK  
Fecha de Ingreso: marzo-2003
Ubicación: Internet
Mensajes: 688
Antigüedad: 21 años, 1 mes
Puntos: 1
Pregunta habilitar un textarea con un radio

tengo este form

<form name='enviar' method='POST' action='pagina2.htm'>
OPCION1<input type='radio' name='texto' value='texto1'><br>
OPCION2<input type='radio' name='texto' value='texto2'><br>
OPCION3<input type='radio' name='texto'><input type='text' name='texto' value='ponetexto'>
</form>

lo que pretendo hacer es que solo se pueda elejir una OPCION
si se elije OPCION1 u OPCION2 no hay nada raro, pero si se elije OPCION3 quiero que se pueda ingresar un texto en el textarea y que sea solo eso lo que ingrese en la base de datos (campo texto)

con este codigo el problema es que los datos del textarea ingresan a la BD antes con un espacio y una coma

bueno gracias por la ayuda desde ya

ah, esto esta bien en JavaScript, no?

Última edición por BatiK; 14/01/2004 a las 14:57
  #2 (permalink)  
Antiguo 19/01/2004, 15:50
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
Prueba con esto y me dices!
Código PHP:
<form     name="enviar" 
        
method="POST" 
        
action="pagina2.htm">

        
OPCION1
<input     type="radio" 
        
onclick="document.forms[0].elements[3].disabled=true;" 
        
name="texto" 
        
value="texto1"><br>
        
OPCION2
<input     type="radio" 
        
onclick="document.forms[0].elements[3].disabled=true;" 
        
name="texto" 
        
value="texto2"><br>
        
OPCION3
<input     type="radio" 
        
onclick="document.forms[0].elements[3].disabled=false;" 
        
name="texto">

<
input     disabled="disabled" 
        
type="text" 
        
name="texto" 
        
value="ponetexto">
</
form
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #3 (permalink)  
Antiguo 19/01/2004, 15:56
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
Si quieres que si se selecciona el tercero y se escribe algo y luego se cambia de opinión y se selecciona cualquier a de los dos anteriores se vuelva al valor inicial prueba este ejemplo:
Código PHP:
<html>
<
head>
    <
title>Untitled</title>
    <
script>
    
valorInicial="Hola pepe"
    
function empezar(){texto23=document.forms[0].elements[3]
    
texto23.value=valorInicial;}
    
</script>
</head>

<body onload="empezar()">
<form     name="enviar" 
        method="POST" 
        action="pagina2.htm">

        OPCION1
<input     type="radio" 
        onclick="texto23.disabled=true;texto23.value=valorInicial" 
        name="texto" 
        value="texto1"><br>
        OPCION2
<input     type="radio" 
        onclick="texto23.disabled=true;texto23.value=valorInicial" 
        name="texto" 
        value="texto2"><br>
        OPCION3
<input     type="radio" 
        onclick="texto23.disabled=false;" 
        name="texto">

<input     disabled="disabled" 
        type="text" 
        name="texto" 
        >
</form>

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

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #4 (permalink)  
Antiguo 30/01/2004, 01:31
Avatar de BatiK  
Fecha de Ingreso: marzo-2003
Ubicación: Internet
Mensajes: 688
Antigüedad: 21 años, 1 mes
Puntos: 1
Hola Karlankas

mira el primer ejemplo me funciono bien
pero si se elije la OPCION3 en la base de datos el texto ingresa con un on, antes

asi:

on, ponetexto

Gracias
  #5 (permalink)  
Antiguo 30/01/2004, 14:26
 
Fecha de Ingreso: diciembre-2003
Ubicación: en la luna
Mensajes: 22
Antigüedad: 20 años, 5 meses
Puntos: 0
hola, yo tengo un problema similar, basicamente lo que quiero es mas o menos hacer lo mismo... pero no con todo el formulario si no que se tienen 3 radio buttons y si se elige el primer radiobutton que se desactiven "el nombre" "direccion" y "mail" por ejemplo y solo quede activo "el telefono" , si se elige el 2do radioboton, de igual manera que se active "el nombre, "direccion" y se deactive "telefono" y "mail" y asi sucesivamente...

ahh donde "nombre" "email" etc.. son campos de caja de texto, gracias por su ayuda
  #6 (permalink)  
Antiguo 06/02/2004, 12:43
Avatar de BatiK  
Fecha de Ingreso: marzo-2003
Ubicación: Internet
Mensajes: 688
Antigüedad: 21 años, 1 mes
Puntos: 1
no pude hacer que entre solo un dato siempre al elejir la opcion 3 entra con on, delante
con las ocpiones 1 y 2 entra bien
  #7 (permalink)  
Antiguo 24/02/2004, 12:11
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
Había un problema ocasionado, probablemente porque la caja de texto tenía el mismo "name" que los "radio buttons". He hecho unos cambios. Decidme si os funciona así.
Código PHP:
<form     name="enviar" 
        
method="POST" 
        
action="javascript:alert(document.forms[0].textoescrito.value);">

        
OPCION 1
<input     type="radio" 
        
onclick="document.forms[0].elements[3].disabled=true;" 
        
name="texto" 
        
value="texto1"><br>
        
OPCION 2
<input     type="radio" 
        
onclick="document.forms[0].elements[3].disabled=true;" 
        
name="texto" 
        
value="texto2"><br>
        
OPCION 3
<input     type="radio"
        
value="texto3" 
        
onclick="document.forms[0].elements[3].disabled=false;" 
        
name="texto">

<
input     disabled="disabled" 
        
type="text" 
        
name="textoescrito" 
        
value="ponetexto">
        <
input type="submit">
</
form
gizmho!

Si te fijas en el ejemplo verás que es muy sencillo hacer lo que pides. Si por ejemplo quieres deshabilitar un campo que se llame nombre lo puedes hacer así:

document.forms[0].nombre.disabled=true;

y para habilitarlo:

document.forms[0].nombre.disabled=false;

Luego, si quieres habilitar y deshabilitar varios mételos en una function y llámala con el onclick. Así:
Código PHP:
<head>
<
script>
function 
opcion1(){
document.forms[0].nombre.disabled=true;
document.forms[0].direccion.disabled=true;
document.forms[0].mail.disabled=true;
document.forms[0].telefono.disabled=false;

}
function 
opcion2(){
document.forms[0].nombre.disabled=false;
document.forms[0].direccion.disabled=false;
document.forms[0].mail.disabled=false;
document.forms[0].telefono.disabled=true;

}

</script>
</head>
<body>
]<form     name="enviar" 
        method="POST" 
        action="pagina2.html">

        OPCION 1
<input     type="radio" 
        onclick="opcion1()" 
        name="texto" 
        value="texto1"><br>
        OPCION 2
<input     type="radio" 
        onclick="opcion2()" 
        name="texto" 
        value="texto2"><br>
        
...
Nombre: <input type="text" name="nombre"><br>
Dirección: <input type="text" name="direccion"><br>
Mail: <input type="text" name="mail"><br>
Teléfono: <input type="text" name="telefono">

<input type="submit">
</form> 
Espero que os sirva a todos. Y perdonad por no contestar antes, no he recibido ningún aviso de contestación al hilo.

__________________
Cómo escribir

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

Última edición por KarlanKas; 24/02/2004 a las 12:13
  #8 (permalink)  
Antiguo 26/02/2004, 19:45
Avatar de BatiK  
Fecha de Ingreso: marzo-2003
Ubicación: Internet
Mensajes: 688
Antigüedad: 21 años, 1 mes
Puntos: 1
hola Karlankas, que bueno que volviste por aca

mira en este ultimo form que posteaste cuando le doy al boton enviar solo sale una ventana de alerta con el texto de la opcion3

creo que falta poner a donde se envia el formulario no? que es action='pagina2.htm'

muchas gracias
  #9 (permalink)  
Antiguo 27/02/2004, 02:16
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
Claro, claro... en la etiqueta form cambia el action:
action="javascript:alert(document.forms[0].textoescrito.value);"

y pon:

action="pagina2.htm"

A ver ahora!
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
  #10 (permalink)  
Antiguo 28/02/2004, 16:40
Avatar de BatiK  
Fecha de Ingreso: marzo-2003
Ubicación: Internet
Mensajes: 688
Antigüedad: 21 años, 1 mes
Puntos: 1
Hola de nuevo KarlanKas

ahora el formulario solo envia la palabra on a la base de datos del campo texto, si se elije la opción 3
  #11 (permalink)  
Antiguo 29/02/2004, 04:19
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
Pon tu código! a ver si lo resolvemos...

__________________
Cómo escribir

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

Última edición por KarlanKas; 29/02/2004 a las 04:23
  #12 (permalink)  
Antiguo 01/03/2004, 23:35
Avatar de BatiK  
Fecha de Ingreso: marzo-2003
Ubicación: Internet
Mensajes: 688
Antigüedad: 21 años, 1 mes
Puntos: 1
asi se habla

lo que trato de hacer es poner unas imagenes para elejir y ademas la posibilidad de elejir una imagen propia desde un sitio (http://url/img.gif)

<form name="form1" method="post" action="registro.asp">

NICK:
<input type="text" name="Nick" maxlength="15" onclick="document.forms[0].elements[6].disabled=true;"><br>
E-MAIL:
<input type="text" name="Email" maxlength="50" onclick="document.forms[0].elements[6].disabled=true;"><br>
CONTRASEÑA:
<input type="password" name="Contrasena" maxlength="10" onclick="document.forms[0].elements[6].disabled=true;"><br>

OPCION 1
<img src"img/uno.gif">
<input type="radio"
onclick="document.forms[0].elements[6].disabled=true;"
name="imagen"
value="img/uno.gif"><br>


OPCION 2
<img src"img/dos.gif">
<input type="radio"
onclick="document.forms[0].elements[6].disabled=true;"
name="imagen"
value="img/dos.gif"><br>


OPCION 3
<input type="radio"
onclick="document.forms[0].elements[6].disabled=false;"
name="imagen">

<input disabled="disabled"
type="text"
name="textoescrito"
value="http://url/imagen.gif">


<input type="submit" name="Submit" value="registrar">
</form>
  #13 (permalink)  
Antiguo 23/03/2004, 14:43
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
Hola BatiK!

Perdona la tardanza en la respuesta!

Te pasaba porque el tercer radio no tiene valor. Prueba a poner esto en vez de éste y la caja de texto siguiente:

Código PHP:
OPCION 3
<input type="radio"
onclick="document.forms[0].elements[6].disabled=false;this.value=document.forms[0].elements[6].value" 
name="imagen"
value="">

<
input onchange="document.forms[0].imagen[2].value=this.value" disabled="disabled" 
type="text" 
name="textoescrito" 
value="http://url/imagen.gif"
Lo que hace es que el radio tres tenga el valor del texto que se ponga en la caja de al lado.

Espero que te sirva!

__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.
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 13:44.