Jeśli chodzi o dynamiczne ładowanie strony, należy zdać sobie sprawę, że za wszystkimi „JQuery AJAX Cloud!” magia, dzieją się tylko dwie możliwe rzeczy:
- Kod elementu jest wstrzykiwany do div (zły) lub
- Treść ładowana jest w ramce iframe (lepiej, ale to nie to samo ...)
Jeśli chodzi o oryginalne pytanie, tworzę treść HTML tylko za pomocą Javascript, gdy tworzę aplikację internetową, która odczytuje dane XML lub JSON przechowywane na serwerze, i to się bardzo zmienia.
Nie ma większego sensu ładowanie treści statycznych na stronie za pomocą Javascript, ponieważ zawsze istnieje możliwość, że nie załaduje się ona poprawnie lub klient wyłączy ją („weź te nieznośne reklamy!”). Ponadto utrudnia to zmianę treści HTML, gdy jest umieszczona w brzydkim document.write()
lub łańcuchu document.createElement()
.
Masz rację; albo wpisz nieprzetworzony kod HTML, albo jeśli konieczna jest zawartość dynamiczna, użyj skryptu po stronie serwera, aby wyświetlić niezbędne dane. Użyj Javascript do wstrzykiwania HTML tylko wtedy, gdy witryna ma działać bez połączenia z Internetem lub podobnej sprawy.
Ostatnia uwaga, jeśli chcesz zaimplementować xmlhttprequests, er, AJAX, na stronie internetowej, prawdopodobnie najlepszym / najbezpieczniejszym sposobem na to jest przechowywanie danych w formacie danych (np. XML), ładowanie i wysyłanie ich odpowiednio na kliencie. document.write
i element.innerHTML
tak naprawdę nie jest to najlepszy sposób na manipulowanie treścią i na pewno spowoduje potencjalne bóle głowy w przyszłości (dlaczego ten skrypt nie działa? Mój zepsuty <i>
tag zapisuje kursywą wszystko! itp.).