2013-02-19 115 views
0

我在JavaScript中的變量,我已經檢索和存儲在這個變量一個巨大的XML內容,如如何顯示在瀏覽器

var content = "" 

內容變量會擁有巨大的XML內容的XML內容。

從我相同的JavaScript文件,我打開使用

var mywindow = window.open("\test.html") 

一個新的窗口,我使用document.write

mywindow.document.write(content) 

顯示在新窗口中存儲的XML內容。

我沒有在JavaScript文件中使用任何XSLT或任何其他樣式表。

內容被加載到窗口中,但是XML內容沒有正確加載到瀏覽器中,我可以在看到頁面源時看到確切的內容。

如何直接在瀏覽器中顯示XML內容?

+0

是您的XML是正確的XML格式? – EnterJQ 2013-02-19 05:40:45

+0

我分配給變量的xml只適用於xml。我使用了警報並複製了呈現的xml,並將xml內容保存爲.xml並在瀏覽器中打開,並正確打開。 – user1428019 2013-02-19 05:42:12

回答

0

document.write()實際上會創建XML數據的標籤,而不是將其顯示爲原始文本。

像這樣的東西應該工作:

var xml = '<hello>world</hello>'; 
if (document.body.innerText !== undefined) { 
    document.body.innerText = xml; 
} 
else { 
    document.body.textContent = xml; 
} 
+0

上述方法現在在瀏覽器頁面中編寫/顯示任何東西 – user1428019 2013-02-19 06:00:09

+0

您使用的瀏覽器是什麼? – Kris 2013-02-19 06:05:05

+0

Internet Explorer – user1428019 2013-02-19 06:05:44

0

試試這個,

 xmlhttp.open("GET","yourfile.xml",true); 
    xmlhttp.send(); 
    xmlDoc=xmlhttp.responseXML; 

<script type="text/javascript"> 

var xhr= window.XMLHttpRequest? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP'); 
xhr.onreadystatechange= function() { 
    if (this.readyState===4 || this.status===200) 
     populateTable(this.responseXML); 
}; 
xhr.open('GET', 'yourfile.xml', true); 
xhr.send(); 

function populate(xml) { 
    var content= xml; 
    myElem.innerHTML += content; 
}; 

</script> 
+0

我沒有xml文件,xml contnet動態分配給我的變量 – user1428019 2013-02-19 05:58:00

+0

那個XML文件在那裏調用你的PHP/java腳本 – EnterJQ 2013-02-19 06:00:56