Ajax-在html页面中显示xml消息

Ajax-在html页面中显示xml消息,ajax,xml,Ajax,Xml,发送消息时,xml将显示在调试器中。但我不知道如何在html网页中显示它。我没有使用jquery if(xhr) { xhr.onreadystatechange = function() { if(xhr.readyState === 4) { if(xhr.status === 200) { var value = xhr.responseXML; var msgs = v

发送消息时,xml将显示在调试器中。但我不知道如何在html网页中显示它。我没有使用jquery

    if(xhr) {
    xhr.onreadystatechange = function() {
        if(xhr.readyState === 4) {
            if(xhr.status === 200) {
                var value = xhr.responseXML;
                var msgs = value.getElementsByTagName('message');
                console.log("Processing ", msgs.length, " messages");
                for(var i = 0; i < msgs.length; i++) {
                    var id = parseInt(msgs[i].getAttribute("id"));
                    if(lastid < id) {
                        lastid = id;
                    }
                    console.log(msgs[i].childNodes[1].firstChild.nodeValue);


                }   

我需要在上面添加其他内容吗?我需要在我的html页面上添加什么?

这实际上只是一个小JavaScript代码,它将一些结果写入console.log

从这里我看不出您真正想要做什么,但要写入文档而不是控制台,您可以使用document.writemsgs[i].childNodes[1].firstChild.nodeValue

或者,例如,如果您指定一个id=res的DIV,那么您可以这样做

document.getElementById("res").innerHTML += msgs[i].childNodes[1].firstChild.nodeValue;
而不是

console.log(msgs[i].childNodes[1].firstChild.nodeValue);

您可以执行以下操作:

document.querySelector('#display').innerHTML = msgs[i].childNodes[1].firstChild.nodeValue

或者换句话说,您需要将应该显示的文本设置为元素的文本内容。如果是新的,则需要将其附加到dom中。总而言之:这取决于您显示消息的方式。也可以使用客户端模板,如显示变得更复杂。

谢谢显示所有消息,有没有办法只显示最新消息而不是全部消息?当然,将+=更改为简单的=,这样您就不会附加html,而是每次都将其更改为最新消息