Con respecto a la carga dinámica de páginas, uno debe darse cuenta de que detrás de todo "JQuery AJAX Cloud!" magia, solo están sucediendo dos cosas posibles:
- El código de un elemento se inyecta en un div (incorrecto) o
- El contenido se está cargando en un iframe (mejor, pero no es lo mismo ...)
En cuanto a la pregunta original, solamente puedo crear contenido HTML a través de Javascript cuando estoy creando una aplicación web de algún tipo que lee XML o JSON datos almacenados en el servidor, y se pone cambiado mucho.
No tendría mucho sentido para cargar el contenido estático en una página con Javascript, ya que siempre existe la posibilidad de que no se carga bien, o el cliente tendrá que desactivado ( "Take That anuncios molestos!"). Además, hace que sea muy difícil de cambiar el contenido HTML cuando se smushed dentro de un feo document.write()
o una cadena de document.createElement()
's.
Por lo tanto, usted tiene razón; o bien escribir el HTML puro, o si el contenido dinámico-ish es necesario, utilice un script del servidor del lado de salida a lo que sea necesario. Uso Javascript para inyectar HTML sólo si el sitio está destinado a trabajar sin una conexión a Internet, o un caso similar.
Una última nota, si desea implementar xmlhttprequests, er, AJAX, en un sitio web, probablemente la mejor / más segura forma de hacerlo es almacenar los datos en un formato de datos (como XML), cargarlos y enviarlos en consecuencia en el cliente document.write
y element.innerHTML
realmente no es la mejor manera de manipular el contenido, y seguramente causará posibles dolores de cabeza en el futuro (¿por qué no se ejecuta este script? ¡Mi <i>
etiqueta rota está en cursiva todo! etc.).