Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > JavaScript: Общие вопросы > Импортировать ноды из responseXML в document |
Автор: y3u 2.10.2006, 15:26 | ||||
что-то я уже битый час бьюсь, не получаиццо сделать простую штуку. Пришел ко мне DOM объект, который мне вернул AJAX, содержит он там примерно такие данные
допустим мне надо в каждую строчку таблицы вставить HTML код из childNode, при чем вариант, что DOM уже будет содержать готовую таблицу отпадает сразу. Допустим, я уже нахожусь в нужно месте метода, где собираюсь добавить из нужного узла DOM объекта содержимое в строку таблички через innerHtml
Как нужно правильно поступить? Если тупо делаю appendChild(childNode), то валится No such interface supported. Если делать row.innerHtml = childNode; естественно, рисует "[object]". |
Автор: y3u 2.10.2006, 16:18 | ||
пока вышел из положения вот таким образом, но может кто подкажет более правильное решение?
|
Автор: pythonwin 2.10.2006, 16:27 |
y3u, 1) пожалуйста, выложи весь код 2) пожалуйста, не используй сленг 3) не понял вопроса |
Автор: skyboy 2.10.2006, 16:34 |
приведи код response и код, html код области, куда ты вставляешь данные и "вставляющий" код . |
Автор: y3u 2.10.2006, 16:43 |
pythonwin, подправил первый пост, убрал т.н. "сленг" ![]() люди, не могу я сюда запостить весь код, во-первых он достаточно большой, во вторых - не положено. Не ужели не понятна проблематика? Есть DOM дерево, которое достается из httpRequest.responseXML, в нем узлы либо текстовые либо Element, верхняя часть дерева, скажем на глубину 2-3 уровня - это мои XML теги, все что внутри - это протрансформленное заранее кучей XSL-ников в моем вебприложении содержимое, которое, в итоге, является вполне себе нормальным HTML. Мне теперь надо добавить в строки таблицы к уже существующему контенту это саме HTML содержимое. Поэтому я написал вот такую извратную функцию, которая решает мою проблему. Вопрос состоит в том, можно ли как-то обойтись без этой функции стандартными средствами, т.к. там есть рекурсия, использование которой не желательно. |
Автор: pythonwin 2.10.2006, 16:48 |
спасибо! ![]() |
Автор: skyboy 2.10.2006, 17:03 |
понимаешь, у меня такая схема проблем не вызвала, потому я и спрашиваю весь код ![]() проверим, правильно ли я понял. тебе приходит в XML-тегах HTML-код, который является строкой таблицы + содержимое строки и тебе надо этот код строки из response вставить в таблицу? |
Автор: Sardar 4.10.2006, 20:06 |
y3u, ты ошибся только при импорте нод. Нельзя ноды из одного документа appendChild в ноды другого документа. Существует метод импортированная_нода = document.importNode(нода, true); Вторым параметром указываем что импортируем ноду с дочерними нодами. Полученную ноду/елемент добавляем через appendChild, ошибок быть не должно. Этот же механизм используеться при переносе нод с одного ифрейма в другой. |