2013-01-07 221 views
-2

的試圖解析一些XML然後插入特定部分成各種HTML元素。HTML可生產<br>相反XML <br />或<br></br>

我使用的innerHTML程序,每當我插入<br>標籤,格式爲XML文檔中<br /><br></br>它會自動忽略/和格式它<br>

XML源:

&lt;br /&gt; 

我嘗試過用HTML字符代碼代替/,但仍插入<br>

我想要<br /><br></br> 爲什麼不能正常工作?

編輯:

XML文件:

<?xml version="1.0" encoding="iso-8859-1"?> 
<questionContainer> 

    <title>What is this?</title> 

    <body> 
    &lt;br /&gt; 
    This is the login form to access the KayPop beta. New beta testers are accepted weekly, find our more or... 

    &lt;br/&gt;&lt;br/&gt; 
    &lt;a href="#"&gt;Sign up here!&lt;/a&gt; 
    </body> 


</questionContainer> 

JavaScript例程:

function insertXML() 
    { 
     $.ajax ({ 
      type: "GET", 
      url: 'cd_catalog.xml', 
      dataType: "xml", 
      success: function(xml) 
      {   
       $(xml).find('questionContainer').each(function(){ 
        var title = $(this).find('title').text(); 
        document.getElementById('q-T').innerHTML = title; 

        var bodyText = $(this).find('body').text(); 
        document.getElementById('q-B').innerHTML = bodyText; 
       }); 
      } 
     }); 
    } 

Procuded HTML(在瀏覽器中查看 - >檢查元素):

http://i.imgur.com/0bq3q.png

+0

什麼是DOCTYPE,什麼是您使用解析(的innerHTML建議使用JavaScript)? –

+0

不管別的什麼,xHTML換行符標籤應該是'
' - '

'無效;它必須是一個自閉標籤。 – SDC

+1

不是指向有意義的,但是你正在使用'innerHTML' - 所以我期望得到HTML回來 - 而不是像你一樣的XML。 – hakre

回答

3

瀏覽器在內存中保留DOM的表示。

當您讀取innerHTML時,它會將DOM序列化爲HTML。

有沒有辦法讓一個瀏覽器,它序列化到XHTML,或控制時,有多種方式來表示的東西(即你不能說出的<p id=1>的偏愛超過<p id="1">,反之亦然(同上它將使用其HTML語法<br><br /><br></br>)。

如果你想XHTML,你需要走的節點在DOM,並將其呈現爲XHTML自己。

+0

建議鏈接:[?我如何序列化DOM到XML文本,使用JavaScript,在一個跨瀏覽器的方式(http://stackoverflow.com/q/43455/367456) – hakre

相關問題