Foros del Web » Programando para Internet » Jquery »

Desaparecer el texto de un textarea al hacer click

Estas en el tema de Desaparecer el texto de un textarea al hacer click en el foro de Jquery en Foros del Web. Hola a todos, Tengo un form con un textarea para que el usuario haga preguntas. Mi intención es que al hacer click en submit, se ...
  #1 (permalink)  
Antiguo 16/05/2013, 15:52
 
Fecha de Ingreso: octubre-2011
Ubicación: Buenos Aires
Mensajes: 84
Antigüedad: 12 años, 6 meses
Puntos: 2
Pregunta Desaparecer el texto de un textarea al hacer click

Hola a todos,

Tengo un form con un textarea para que el usuario haga preguntas. Mi intención es que al hacer click en submit, se capture el contenido del texto en la variable preg para trabajar con Ajax (hasta aca lo hice y funciona), y que el contenido del text área se borre (no se como hacerlo. Probe con jquery con la función val(), pero me borra la variable preg con el contenido de la pregunta.

Les agradezco desde ya la ayuda que puedan darme.

Código HTML:
Ver original
  1. <form action="javascript:ajax_preg()" method="GET">
  2.    <textarea type="text" id="pregunta" cols="50" rows="2"></textarea><br/>
  3.    <input type="submit" value="Enviar Pregunta" id="efecto_preg"/>
  4. </form>

Código Javascript:
Ver original
  1. <script>
  2. var xhr;
  3. function ajax_preg(){
  4.   var preg=document.getElementById('pregunta').value;
  5.   var id_user= "<?php echo $user_id; ?>";
  6.  
  7.   xhr=getXHR();
  8.   xhr.open("GET","ajax_pregunta.php?pregunta="+preg+"&id_user="+id_user);
  9.     xhr.onreadystatechange=callback;
  10.     xhr.send();
  11. }
  12. function callback(){
  13.   if(xhr.readyState==4){
  14.      if(xhr.status==200){
  15.        document.getElementById("preg_callback").innerHTML=xhr.responseText;
  16.         }
  17.     }
  18. }
  19. </script>
  #2 (permalink)  
Antiguo 16/05/2013, 16:09
Avatar de Lobito14  
Fecha de Ingreso: abril-2010
Mensajes: 222
Antigüedad: 14 años
Puntos: 17
Respuesta: Desaparecer el texto de un textarea al hacer click

Creo que lo estás haciendo con Javascript, no con jQuery, y estás posteando en la sección equivocada.

De todas formas te pongo la solución en jQuery para borrar el contenido del textarea al darle click al botón de submit:

Código Javascript:
Ver original
  1. $('#efecto_preg').click(function(){
  2.       $('#pregunta').val('');
  3. });

Saludos.
  #3 (permalink)  
Antiguo 16/05/2013, 16:26
 
Fecha de Ingreso: octubre-2011
Ubicación: Buenos Aires
Mensajes: 84
Antigüedad: 12 años, 6 meses
Puntos: 2
Respuesta: Desaparecer el texto de un textarea al hacer click

Hola, gracias por la respuesta, pero al poner:

Código Javascript:
Ver original
  1. $('#efecto_preg').click(function(){
  2.           $('#pregunta').val('');
  3.     });

me desaparece el texto, pero tambien me borra la var preg que uso en ajax! Como evito esto? hay otra forma?
  #4 (permalink)  
Antiguo 16/05/2013, 16:44
Avatar de Lobito14  
Fecha de Ingreso: abril-2010
Mensajes: 222
Antigüedad: 14 años
Puntos: 17
Respuesta: Desaparecer el texto de un textarea al hacer click

mmmm, pues no sabría exactamente que decirte.

Lo único que te puedo comentar, con mis experiencias con Ajax, es que al trabajar asincronamente, digamos que no sigue el flujo del programa, y a lo mejor la parte en Ajax que guarda el valor en la variable preg se ejecuta después de que borres el contenido del textbox, no se si me explico.

La única solución, un poco chapuza, que se me ocurre, es que guardes el valor ese del textarea en otro textarea oculto al público por ejemplo, con la propiedad CSS display:none, y en la parte de Ajax pilles el valor de ese textarea oculto, que como no lo verá el usuario no tienes que andar borrandole el contenido.

No si se me habrás entendido.

Un saludo.

Etiquetas: desaparecer, textarea
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 22:48.