Foros del Web » Programando para Internet » Javascript »

Ayuda con Textarea

Estas en el tema de Ayuda con Textarea en el foro de Javascript en Foros del Web. Hola, estoy haciendo un chat en js y ajax, el problema viene cuando al darle a enviar me procesa todo perfecto y me muestra el ...
  #1 (permalink)  
Antiguo 17/11/2010, 09:08
lamek
Invitado
 
Mensajes: n/a
Puntos:
Ayuda con Textarea

Hola,
estoy haciendo un chat en js y ajax, el problema viene cuando al darle a enviar me procesa todo perfecto y me muestra el mensaje en el textarea, el problema viene a la hora de que cuando vuelvo a enviar otro mensaje quiero que me aparezca debajo de la linea anterior en vez de borrarme el mensaje anterior y poner el nuevo.

Alguna idea?
  #2 (permalink)  
Antiguo 17/11/2010, 09:13
Avatar de _cronos2
Colaborador
 
Fecha de Ingreso: junio-2010
Mensajes: 2.062
Antigüedad: 13 años, 10 meses
Puntos: 310
Respuesta: Ayuda con Textarea

Me imagino que estarás usando value, entonces en vez de poner value =, pon value +=.
Saludos (:
__________________
" Getting older’s not been on my plans
but it’s never late, it’s never late enough for me to stay. "
Cigarettes - Russian Red
  #3 (permalink)  
Antiguo 17/11/2010, 09:18
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ayuda con Textarea

Lo he cambiado y en vez de textare he puesto un div, me funciona todo igual, lo que aun no se como hacerlo. Alguna idea?

Última edición por lamek; 17/11/2010 a las 09:26
  #4 (permalink)  
Antiguo 17/11/2010, 10:29
 
Fecha de Ingreso: septiembre-2004
Ubicación: La Plata Argentina
Mensajes: 128
Antigüedad: 19 años, 7 meses
Puntos: 9
Respuesta: Ayuda con Textarea

La idea de un web chat es compleja porque en la tecnologia web actual no existe la opcion "push" para que el servidor actualice la pagina sin que el navegador se lo pida.
Hay varias triquiñuelas para emular esto, (facebook usa una muy eficiente), cual estas usando vos ? Lo pregunto porque los mensajes se deberian actualizar desde el servidor y no desde el navegador. Cuando un usuario agrega un mensaje, este mensaje deberia ir al servidor y este deberia distribuirlo entre todos los usuarios del chat. Entonces es el servidor el que "arma" el tablon de mensajes y no el navegador. Es asi para tu caso?

Saludos
  #5 (permalink)  
Antiguo 17/11/2010, 11:23
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Ayuda con Textarea

la idea de cronos2 es buena, concatena el mensaje anterior, algo asi como:

mi_textarea=mi_textarea + "<br>" + mi_mensaje

el <br> es para que baje una linea.
  #6 (permalink)  
Antiguo 17/11/2010, 12:43
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ayuda con Textarea

Ya lo he conseguido he hecho lo que me habeis recomendado y me a funcionado, y hay alguna opcion para que el overflow me baja cada vez que se actualice para poder ver el ultimo mensaje?
  #7 (permalink)  
Antiguo 17/11/2010, 13:16
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Ayuda con Textarea

Intenta con esta:

mi_textarea.scrollTop = mi_textarea.scrollHeight;

fija la posición del scroll en la ubicación igual al alto máximo del scroll (al final)
  #8 (permalink)  
Antiguo 18/11/2010, 09:04
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ayuda con Textarea

Y en un div con overflow? como se podia hacer?
  #9 (permalink)  
Antiguo 18/11/2010, 13:40
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 1 mes
Puntos: 336
Respuesta: Ayuda con Textarea

exactamente igual:

mi_div.scrollTop = mi_div.scrollHeight;

sirve para cualquier tipo de scroll
  #10 (permalink)  
Antiguo 19/11/2010, 06:09
lamek
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Ayuda con Textarea

Pues no me hace nada;
He puesto: var MensajesRec = $('#mensajeRec').html();
Y despues: MensajesRec.scrollTop = MensajesRec.scrollHeight;

Deberia funcionar?

Etiquetas: 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 12:36.