En ce qui concerne le chargement de page dynamique, il faut se rendre compte que derrière tous les "JQuery AJAX Cloud!" magie, il n’ya que deux choses possibles:
- Le code d'un élément est en train d'être injecté dans un div (mauvais), ou
- Le contenu est en cours de chargement dans un iframe (c'est mieux, mais ce n'est pas pareil ...)
En ce qui concerne la question initiale, je crée uniquement du contenu HTML via Javascript lorsque je crée une application Web permettant de lire des données XML ou JSON stockées sur le serveur, ce qui entraîne de nombreuses modifications.
Cela n'aurait pas de sens de charger du contenu statique sur une page avec Javascript, car il est toujours possible que le chargement ne soit pas correct ou que le client le désactive ("prenez ces annonces embêtantes!"). En outre, il est très difficile de modifier le contenu HTML lorsque celui-ci est inséré dans un laide document.write()
ou dans une chaîne de document.createElement()
.
Alors tu as raison; soit taper le code HTML brut, ou si un contenu dynamique est nécessaire, utilisez un script côté serveur pour générer ce qui est nécessaire. Utilisez Javascript pour injecter du code HTML uniquement si le site est conçu pour fonctionner sans connexion Internet ou dans un cas similaire.
Une dernière remarque, si vous souhaitez implémenter xmlhttprequests, euh, AJAX, dans un site Web, le meilleur moyen / le plus sûr de le faire est de stocker les données dans un format de données (comme XML), de les charger et de les exporter en conséquence. sur le client. document.write
et element.innerHTML
ce n’est vraiment pas la meilleure façon de manipuler le contenu, et est susceptible de causer des maux de tête potentiels à l’avenir (pourquoi ce script n’exécute-t-il pas? Ma <i>
balise cassée met tout en italique! etc.).