Foros del Web » Programando para Internet » Javascript »

Meter texto en un textarea sin borrar lo que ya hay

Estas en el tema de Meter texto en un textarea sin borrar lo que ya hay en el foro de Javascript en Foros del Web. Hola queria saber como puedo introducir un texto en un textarea sin que se me borre lo que haya dentro de el. Aqui pongpo el ...
  #1 (permalink)  
Antiguo 08/02/2007, 11:54
Avatar de Aimarejada  
Fecha de Ingreso: abril-2006
Mensajes: 207
Antigüedad: 18 años
Puntos: 0
Meter texto en un textarea sin borrar lo que ya hay

Hola queria saber como puedo introducir un texto en un textarea sin que se me borre lo que haya dentro de el.

Aqui pongpo el codigo resumido:


Es un text area y una imagen a la cual al darle con el raton introduce un texto en el textarea.

Código:
<html>
<head>
 
  <script>
  function iconos(){
          hola=(":)")
          smiletagform.message_box.value=hola
 
           }     
</script>

</head>

<body>           

<table>
      <form name="smiletagform" method="post" action="post.php" target="iframetag">         
<tr>       
   <td><textarea name="message_box" rows="3" cols="20"></textarea></td>         
</tr>
             
<tr>
   <td><img src="Dirección de la imagen" onMouseDown="iconos()"></td>
</tr>
                   
  </form>                 
</table>

</body>
</html>
  #2 (permalink)  
Antiguo 08/02/2007, 11:58
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Re: Meter texto en un textarea sin borrar lo que ya hay

Hola Aimarejada. Bienvenido al foro.

Modifica un poco esta línea:

Código:
smiletagform.message_box.value+=hola
Saludos,
  #3 (permalink)  
Antiguo 08/02/2007, 12:05
Avatar de Aimarejada  
Fecha de Ingreso: abril-2006
Mensajes: 207
Antigüedad: 18 años
Puntos: 0
Re: Meter texto en un textarea sin borrar lo que ya hay

Muchas gracias problema resuelto.

Es para un tagboard del que tengo el codigo fuente y te trae emoticonos para poner pero estos solo se pueden poner mediente el tipico codigo este de : ) asique para eso queria saberlo.

Un saludo y gracias por la bienvenida.
  #4 (permalink)  
Antiguo 08/02/2007, 15:30
Avatar de Aimarejada  
Fecha de Ingreso: abril-2006
Mensajes: 207
Antigüedad: 18 años
Puntos: 0
Re: Meter texto en un textarea sin borrar lo que ya hay

Una pregunta y si quiero que me lo ponga donde este el cursor en ese momento?
  #5 (permalink)  
Antiguo 09/02/2007, 11:06
 
Fecha de Ingreso: abril-2006
Ubicación: Colombia
Mensajes: 648
Antigüedad: 18 años
Puntos: 3
Re: Meter texto en un textarea sin borrar lo que ya hay

Buenas

el textarea tiene las propiedades selectionStart y selectionEnd, si ninguna de las 2 tiene valor, si no hay nada seleccionado estas brindaran la informacion de la posicion actual del cursor, y desde la posicion que ellas informen deberias concatenar la cadena, suerte
  #6 (permalink)  
Antiguo 10/02/2007, 16:29
Avatar de Aimarejada  
Fecha de Ingreso: abril-2006
Mensajes: 207
Antigüedad: 18 años
Puntos: 0
Re: Meter texto en un textarea sin borrar lo que ya hay

Bueno esto es lo que he hecho pero no me sirve para nada ya que empeze esta semana con javascript y se muy poco.

Haber si me podeis ayudar.


Es solo la parte del script
Código:
 <script>
  function iconos(){
  
   var cadena=smiletagform.message_box.selectionStart
   var hola=cadena
   
          hola=(":)")
          smiletagform.message_box.value=hola
 
           }     
</script>
  #7 (permalink)  
Antiguo 12/02/2007, 09:01
 
Fecha de Ingreso: abril-2006
Ubicación: Colombia
Mensajes: 648
Antigüedad: 18 años
Puntos: 3
Re: Meter texto en un textarea sin borrar lo que ya hay

Hola

Bueno, pues vas por buen camino, a continuacion me tome el atrevimiento de agregar algunas cosas

function iconos(message_box){

var cadena=smiletagform.message_box.selectionStart
var cara = ":)";
var valor = message_box.value;
var hola;
if(cadena==0)
{
hola = cara;
}
else
{
hola= valor+""+cara;
}

smiletagform.message_box.value=hola

}

y en el form el message_box tiene esto

<input type="text" name="message_box" onclick="iconos(message_box)">

que hace la funcion? pues recibe el objeto message_box, y si no tiene nada escrito, pues solo pone la cara, y si tiene algo escrito pone el texto ya escrito y a continuacion la cara, espero os funcione, suerte.
  #8 (permalink)  
Antiguo 12/02/2007, 13:13
 
Fecha de Ingreso: abril-2006
Ubicación: Colombia
Mensajes: 648
Antigüedad: 18 años
Puntos: 3
Re: Meter texto en un textarea sin borrar lo que ya hay

Hola

Bueno, creo que pude mejorar la funcion para que la cara se inserte donde se encuentra el cursor, espero os funcione, suerte

function iconos(message){

var cadena=smiletagform.message_box.selectionStart
var cara = ":)";
var valor = message.value;
var hola;

hola= valor;
smiletagform.message_box.value=hola.substring(0,ca dena)+cara+hola.substring(cadena);

}

y en el form

<input type="text" name="message_box" onclick="iconos(message_box)">

suerte
  #9 (permalink)  
Antiguo 12/02/2007, 15:46
Avatar de Aimarejada  
Fecha de Ingreso: abril-2006
Mensajes: 207
Antigüedad: 18 años
Puntos: 0
Re: Meter texto en un textarea sin borrar lo que ya hay

Esto es lo que monte pero no me funciona:



Código:
<html>
  <head>

  <title></title>
  
  <script>
  
  function iconos(message){

var cadena=smiletagform.message_box.selectionStart
var cara = ":)";
var valor = message.value;
var hola;

hola= valor;
smiletagform.message_box.value=hola.substring(0,ca dena)+cara+hola.substring(cadena);

} 
  </script>
  
  </head>
<body>           

<table>
      <form name="smiletagform" method="post" action="post.php" target="iframetag">         
<tr>       
   <td><input type="text" name="message_box" onclick="iconos(message_box)"></td>         
</tr>
             
<tr>
   <td><img src="Dirección de la imagen" onMouseDown="iconos()"></td>
</tr>
                   
  </form>                 
</table>

</body>
</html>
  #10 (permalink)  
Antiguo 12/02/2007, 15:52
 
Fecha de Ingreso: abril-2006
Ubicación: Colombia
Mensajes: 648
Antigüedad: 18 años
Puntos: 3
Re: Meter texto en un textarea sin borrar lo que ya hay

Hola

Bueno, es que os quedo un espacio en la palabra cadena del codigo de javascript, unelo y funciona, copie vuestro codigo y lo probe, y funciona bien arreglando ese detalle, suerte.
  #11 (permalink)  
Antiguo 12/02/2007, 16:15
Avatar de Aimarejada  
Fecha de Ingreso: abril-2006
Mensajes: 207
Antigüedad: 18 años
Puntos: 0
Re: Meter texto en un textarea sin borrar lo que ya hay

Ok ya me funciona aunque lo que me hace es poner el doble por cada click que doy dentro de ese input sin embargo dandole a la imagen no pone nada dentro del input.
  #12 (permalink)  
Antiguo 12/02/2007, 16:48
 
Fecha de Ingreso: abril-2006
Ubicación: Colombia
Mensajes: 648
Antigüedad: 18 años
Puntos: 3
Re: Meter texto en un textarea sin borrar lo que ya hay

Hola

Bueno, pues que tal con este

<img src="Dirección de la imagen" onmousedown="iconos(smiletagform.message_box)">

Creo que ahora si

Suerte
  #13 (permalink)  
Antiguo 13/02/2007, 05:35
Avatar de Aimarejada  
Fecha de Ingreso: abril-2006
Mensajes: 207
Antigüedad: 18 años
Puntos: 0
Re: Meter texto en un textarea sin borrar lo que ya hay

Lo he probado pero lo que me hacia es duplicar el contenido cada vez que pulsaba el input.
  #14 (permalink)  
Antiguo 13/02/2007, 08:24
 
Fecha de Ingreso: abril-2006
Ubicación: Colombia
Mensajes: 648
Antigüedad: 18 años
Puntos: 3
Re: Meter texto en un textarea sin borrar lo que ya hay

Hola

Bueno, eso es porque en el input esta tambien llamando a la funcion de javascript al hacer click sobre el, simplemente borra ese onclick del input, y dejalo solo en la imagen, asi solo la cara se pondra cuando den click en la imagen

Suerte
  #15 (permalink)  
Antiguo 13/02/2007, 12:19
Avatar de Aimarejada  
Fecha de Ingreso: abril-2006
Mensajes: 207
Antigüedad: 18 años
Puntos: 0
Re: Meter texto en un textarea sin borrar lo que ya hay

Aun cambiando eso me sige duplicando lo que haya escrito cuando le doy a la imagen y tampoco me lo pone donde este el cursor.
  #16 (permalink)  
Antiguo 13/02/2007, 12:55
 
Fecha de Ingreso: abril-2006
Ubicación: Colombia
Mensajes: 648
Antigüedad: 18 años
Puntos: 3
Re: Meter texto en un textarea sin borrar lo que ya hay

Hola

Que explorador manejas???
Creeria que internet explorer.

Yo manejo firefox y en este el codigo funciona perfectamente, y lo probe en internet explorer y en efecto duplica todo, y ahi si habria que ver como solucionarlo.

Prueba en firefox y pues yo mientras miro a ver como mejorarlo para ie, suerte.
  #17 (permalink)  
Antiguo 14/02/2007, 14:38
Avatar de Aimarejada  
Fecha de Ingreso: abril-2006
Mensajes: 207
Antigüedad: 18 años
Puntos: 0
Re: Meter texto en un textarea sin borrar lo que ya hay

Manejo internet explorer, lo probe en firefox y va perfecto pero a saber porque no funciona en el explorer.

Gracias por la ayuda.
  #18 (permalink)  
Antiguo 14/02/2007, 17:27
 
Fecha de Ingreso: abril-2006
Ubicación: Colombia
Mensajes: 648
Antigüedad: 18 años
Puntos: 3
Re: Meter texto en un textarea sin borrar lo que ya hay

Hola

Bueno, pues la verdad no se porque pasa eso, pero pues asi a lo bruto diria que las funciones de javascript son muy avanzadas para el internet explorer??? habria que probar 2 cosas

1. decirle que version de javascript se va a manejar

esto es <script language=javascript 1.2 type=text/javascript> a ver si con eso solo el ya toma que la version del javascript es moderna

2. actualizar internet explorer

creo que van en el 7 si no estoy mal, puede ser eso, yo lo probe en uno que creo es 5 o por mucho sera 6, puede ser eso tambien

bueno, espero tengas exito, suerte.
  #19 (permalink)  
Antiguo 25/02/2007, 09:43
Avatar de Aimarejada  
Fecha de Ingreso: abril-2006
Mensajes: 207
Antigüedad: 18 años
Puntos: 0
Re: Meter texto en un textarea sin borrar lo que ya hay

Yo lo probe y nada.

Gracias de todas formas.
  #20 (permalink)  
Antiguo 25/02/2007, 23:45
 
Fecha de Ingreso: abril-2006
Ubicación: Colombia
Mensajes: 648
Antigüedad: 18 años
Puntos: 3
Re: Meter texto en un textarea sin borrar lo que ya hay

Hola

Bueno,pues he estado probando y no he encontrado el chiste

Lo unico que se me ocurre es que cortes la cadena en un array de javascript y que cuentes los caracteres antes de donde esta el cursor y agregues la carita, y luego el resto, y en fin... seria una vuelta larga pero pues no se me ocurre nada mejor... la otra seria manejarlo con algun script de php pero eso requeriria enviar cuando den click en el boton a un script de php y luego si visualizar nuevamente la pagina con el cambio... en fin, no se me ocurre nada mas, suerte.
  #21 (permalink)  
Antiguo 26/02/2007, 00:18
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Re: Meter texto en un textarea sin borrar lo que ya hay

Hola:

Puedes bajarte el script de esta página: Ejemplo básico de edición

Por cierto, he visto que pone que no funciona en opera, pero ya lo arreglé.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
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 01:23.