Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [JS] Przekształcenie stringa w DOM
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
phpion
Hej,
czy jest możliwość (jakaś sprytna funkcja), która przekształci string w odpowiednią strukturę obiektów? Chodzi mi o coś takiego, że mam stringa np.:
  1. <h1 id="x"></h1>
  2. <p id="y"></p>

i chciałbym go przebudować (bez zabawy w tworzenie obiektów) na DOM aby później móc użyć np.:
  1. document.getElementById("x").innerHTML = "Jakiś tytuł";

Z góry dziękuję za pomoc:
pion
antstd
Hmm... jQuery daje możliwosć tworzenia elementow w taki sposob:
  1. $('<h1 id="x"></h1>')

wiec wydaje mi sie, ze by Ci to sporo ulatwilo sprawe. Tylko nie wiem czy chcesz korzystac z jakis bibliotek.
nevt
przecież sam stosujesz tą "sprytną funkcję"... a w zasadzie właściwość innerHTML - działa dokładnie tak jak oczekujesz...
phpion
Dzięki ~nevt, przecież to było tak banalne worriedsmiley.gif hehe smile.gif Jeśli natomiast chodzi o sposób przedstawiony przez ~antstd to chyba nie do końca on działa (albo źle to staram się wykorzystać... używam mootools):
  1. function domTest() {
  2. var s = '<h1 id="h1"></h1><p id="p"></p>';
  3.  
  4. var t = $(s);
  5. $("div").innerHTML = t;
  6.  
  7. $("h1").innerHTML = "Jozek";
  8. $("p").innerHTML = "Czesiek";
  9. }

W kodzie mam oczywiście div'a o id="div". Zwracane do tegoż div'a "null".
Dzięki za pomoc!
antstd
Wczoraj troche zle zrozumialem Twoj problem, myslalem ze te dwa elementy nie sa zagniezdzone. Ale tak tez dziala:

  1. $(document).ready(
  2. function() {
  3. var div = $('#div');
  4. var str = '<div id="h1"><p id="p"></p></div>';
  5. var test = $(str);
  6. div.append(test);
  7. $('#p').text('sialal');
  8. }
  9. );


Nawet var str = '<div id="h1"><p id="p">sialala</p></div>' przejdzie :)

Pozdrawiam.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.