Що стосується динамічного завантаження сторінки, то слід розуміти, що за всіма "хмарами JQuery AJAX!" магія, відбуваються лише дві можливі речі:
- Код елемента вводиться в div (bad) або
- Вміст завантажується в рамку iframe (краще, але це просто не те саме ...)
Що стосується початкового запитання, я створюю вміст HTML лише через Javascript, коли я створюю веб-додаток такого роду, який читає дані XML або JSON, що зберігаються на сервері, і він сильно змінюється.
Немало б сенсу завантажувати статичний вміст на сторінку за допомогою Javascript, оскільки завжди є можливість, що він не завантажиться правильно, або у клієнта буде його відключено ("візьміть це примхливе оголошення!"). Крім того, це дуже важко змінити вміст HTML, коли він забруднений всередині потворного document.write()
або ланцюжка document.createElement()
.
Отже, ви праві; або введіть необроблений HTML-код, або якщо необхідний динамічний вміст, використовуйте скрипт на сервері, щоб вивести необхідне. Використовуйте Javascript для введення HTML лише в тому випадку, якщо сайт призначений для роботи без підключення до Інтернету чи подібного випадку.
Останнє зауваження, якщо ви хочете реалізувати xmlhttprequests, е, AJAX, на веб-сайті, мабуть, найкращий / найбезпечніший спосіб зробити це - зберігати дані у форматі даних (наприклад, XML), завантажувати їх та виводити відповідно на клієнта. document.write
і element.innerHTML
насправді це не найкращий спосіб маніпулювати вмістом, і це може спричинити потенційні головні болі в майбутньому (чому цей сценарій не працює? Мій зламаний <i>
тег курсивує все! тощо).