Estoy cargando texto en un cuadro de entrada a través del $("textarea").val(ajaxData);
, pero no crecerá automáticamente, y mis datos no se muestran por completo. ¿Hay algún método o algo que pueda llamar para forzar una actualización?jQuery Área de texto en crecimiento móvil con datos AJAX
Respuesta
De hecho, hay una función interna que se encarga de redimensionar, llamada resizeCheck()
. Sin embargo, esa función es un detalle de implementación privada y no está expuesta por el widget como método público.
Puede solucionar este problema, sin embargo: desde resizeCheck()
es llamado por controlador de eventos del widget keyup
, puede desencadenar ese evento a sí mismo después de establecer el nuevo valor:
$("textarea").val(ajaxData).keyup();
Esto cambiará el tamaño del widget en la exacta De la misma manera que si hubiera escrito el nuevo texto "a mano".
Gracias de nuevo Frédéric, me has ahorrado horas de búsqueda. ¡Funciona perfecto! :) Sin embargo, una vez que el campo crezca, no volverá ... encontré este comportamiento haciendo ediciones manuales también. ¿Hay alguna manera de restablecer este campo a la normalidad? ¿Podría ser esto un error? – Astronaut
@ Adam, esto es de hecho un error. [Error # 2719] (https://github.com/jquery/jquery-mobile/issues/2719), para ser específico. –
Gracias una vez más por sus comentarios. Creo que fusionaré el complemento elástico, es un fastidio ya que quería usar el CDN en lugar de un jQuery local. – Astronaut
Debe especificar una altura: 'auto' en su elemento contenedor mediante CSS.
Si escribió una altura estática, no crecerá automáticamente.
var offset=15;
$("textarea").val(ajaxData);
$("textarea").height($("textarea").innerHeight() + offset)
Puede probar sin ningún desplazamiento si funciona en su caso. También puede cambiar el valor de compensación si es necesario
Hola, gracias por esta solución. Sin embargo, me preguntaba si alguien sabe qué función es llamada internamente por jQM para hacer esto con el texto de entrada habitual. si lo escribe, crece automáticamente, pero no con datos ajax. – Astronaut
Hola Imdad would innerHeight dame el valor del texto? ¿Puedo usar esto para hacerlo elástico? ¿Crecer y encogerse? – Astronaut
innerHeight le dará la altura del contenido interno. Por lo tanto, puede crecer/reducir en consecuencia. Para obtener valor o usar el texto real '$ (" textarea "). Val()' – Imdad
- 1. jquery área de texto de crecimiento automático versus texto inicial
- 2. en el área de texto con jQuery
- 3. Capturar texto pegado en un área de texto con JQuery
- 4. de entrada: Texto + selector de área de texto en jQuery
- 5. jQuery ajustar el texto seleccionado en un área de texto
- 6. ¿cómo llenas un área de texto con jquery y linebreaks?
- 7. Cambiar el valor del área de texto con jQuery
- 8. Jquery datos ajax codificación
- 9. Rendimiento de MongoDB con una estructura de datos en crecimiento
- 10. Obtener texto seleccionado en la página (no en un área de texto) con jQuery
- 11. jQuery Arrastrar y colocar en un área de texto
- 12. Comillas simples en cadena con jQuery ajax
- 13. Ctrl + Enter jQuery en el área de texto
- 14. Actualizar MYSQL con jQuery/AJAX
- 15. ¿Cómo leer un archivo de texto en crecimiento en C++?
- 16. creando un área de texto con javascript
- 17. jQuery: establece el ancho de un área de texto?
- 18. Reemplazar el texto seleccionado en el área de texto
- 19. jQuery Escapar HTML a partir de un área de texto
- 20. Datos variables en la llamada ajax JQUERY
- 21. Envío de varios parámetros de datos con jQuery AJAX
- 22. ASP.NET MVC AJAX con jQuery
- 23. jQuery AJAX con IE8
- 24. Lista de crecimiento automático con genéricos
- 25. Desactivación de Área de texto de CSS
- 26. Buscar la siguiente área de texto usando jQuery
- 27. Enviar datos desde el área de texto presionando "Enter"
- 28. Crear información sobre herramientas en la posición del cursor en el área de texto con jQuery
- 29. Llamada Jquery/Ajax con temporizador
- 30. Jquery para poblar la entrada o el área de texto
Publique su CSS, javascript y HTML; probablemente su problema se deba a su CSS. –
No tengo ningún CSS personalizado, esto es para un cuadro de texto normal. la única diferencia es que la entrada no proviene del teclado, sino de la fuente de datos ajax. Entonces debe haber una función para hacer esto en jQM, simplemente no sé cuál es. – Astronaut