Получить строковое представление узла DOM - PullRequest
82 голосов
/ 17 ноября 2009

Javascript: у меня есть DOM-представление узла (элемента или документа), и я ищу его строковое представление. Например.,

var el = document.createElement("p");
el.appendChild(document.createTextNode("Test"));

должно дать:

get_string(el) == "<p>Test</p>";

У меня сильное чувство, что я упускаю что-то тривиально простое, но я просто не нахожу метод, который работает в IE, FF, Safari и Opera. Следовательно, externalHTML - это не вариант.

Ответы [ 11 ]

0 голосов
/ 02 мая 2014

Я потратил много времени на выяснение того, что не так, когда я перебираю элементы DOME с кодом в принятом ответе. Вот что сработало для меня, иначе каждый второй элемент исчезает из документа:

_getGpxString: function(node) {
          clone = node.cloneNode(true);
          var tmp = document.createElement("div");
          tmp.appendChild(clone);
          return tmp.innerHTML;
        },
...