Замените HTMLElement элементом XML - PullRequest
0 голосов
/ 30 декабря 2010

Итак, у меня есть HTML-страница с отличающимся элементом div, и у меня есть несколько ссылок, которые загружают XML-документ

XML-файл выглядит так:div, содержащийся в моей HTML-странице, должен быть заменен их эквивалентом (тем же идентификатором) из XML-файла

. Здесь начинается мой файл javascript., пожалуйста?

Спасибо

Томас

Ответы [ 2 ]

0 голосов
/ 30 декабря 2010

Этот код не проверен. Я думаю, что следую тому, что вы пытаетесь сделать. В вашем цикле после получения ответа обновите innerHTML узла документа с помощью innerXML узла xml. Поскольку я не знаю простого способа получить только innerXml в Firefox и Chrome.

var tmp = document.createElement('div');
for(var i = 0; i < xmlDoc.childElementCount; ++i) {
    c = xmlDoc.children[i]; //Element
    d = document.getElementById(c.getAttribute("id")); //HTMLDivElement
    if (d) { 
        var xml = getXml(c);
        tmp.innerHTML = xml;
        d.innerHTML = tmp.firstChild.innerHTML;
    }
}

Это здесь, поскольку в IE есть другой метод сериализации XML. Я не уверен, что outerXML это то, что вы хотите, может быть xml или outerXml.

function getXml(node) {
    if (window.XMLSerializer) {
        return new XMLSerializer().serializeToString(node);
    }

    if (node.outerXML) {
        return node.outerXML;
    }

    return '';
}
0 голосов
/ 30 декабря 2010

`var newNode = document.createElement ('div');

// назначить ID, CLASS и innerHTML из c в newNode //

d.parentNode.replaceChild (newNode,г); `

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...