2013-04-18 87 views
-2

(「節」)在IE瀏覽器中查找(「科」)不工作 我有這個XML內容無法找到IE瀏覽器

var xmlContent = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?/><Section type="two_column" name="Section Name" id="attr_id_lines_9810"><Column align="Left"><Label>One</Label><Value>test</Value></Column><Column align="Right"><Label>Two</Label><Value>222</Value></Column></Section>'; 
$(xmlContent).find("Section").each(function(){console.log($(this).attr('type");}); 

在IE瀏覽器的代碼無法正常工作。但其他瀏覽器顯示正確的結果。 如果有人知道解決方案請更新。

+0

這是因爲你對待像HTML而不是xml的XML。 –

+0

@KevinB jQuery能夠解析XML以及:) – Archer

+1

@Archer是的,它是。但是他在上面做的是他將xml解析爲HTML,並且因爲IE <9不認爲'section'是一個有效的html元素,所以不能沒有填充就選擇它。如果他使用$ .parseXML(),然後用$()包裝THAT,他可以正常瀏覽它。 (儘管他目前的導航鏈仍然是錯誤的) –

回答

0

XML聲明不是「自動關閉」或配對標籤。刪除斜線。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?/> 

應該是:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 

使用filter(),不.find()爲 「節」 是不是一個子元素。 你也有一個不匹配的報價,你錯過了一個結束括號(其中任何一個將驅動IE堅果)。

$(xmlContent).find("Section").each(function(){console.log($(this).attr('type");}); 

應該是:

$(xmlContent).filter("Section").each(function(){console.log($(this).attr('type'));}); 

放在一起,這就是:

var xmlContent = '<?xml version="1.0" encoding="UTF-8" standalone="yes"?><Section type="two_column" name="Section Name" id="cust_attr_estimate_lines_9810"><Column align="Left"><Label>One</Label><Value>test</Value></Column><Column align="Right"><Label>Two</Label><Value>222</Value></Column></Section>'; 
$(xmlContent).filter("Section").each(function() { 
    console.log($(this).attr('type')); 
}); 

,我可以運行在IE8(和FF和Chrome)開發人員工具控制檯,得到預期結果(two_column)沒有任何問題。

相關問題