2017-12-20 27 views
0

IE 11で動作するようにJavascriptで書かれたこのコードを取得しようとしています。しかし、ノードの長さにアクセスしようとすると0になります。なぜ以下のコードがXMLの<somenode>ノードを見つけることができないのでしょうか?誰にも分かりますか?ActiveXObjectのselectNodes関数がIE 11で動作しません

try { 
    doc = new ActiveXObject("Msxml2.DOMDocument.6.0"); 
    var xml_string = '<somenode><child>Hello</child></somenode> 
        <somenode><child>good bye</child></somenode>'; 
    doc.loadXML(xml_string); 
    doc.setProperty("SelectionLanguage", "XPath"); 
    var node = doc.selectNodes("/somenode"); 
    console.log("node is "+node.length); 
} 
catch (e) 
{ 
    console.log("inside catch"+e); 
} 

答えて

0

注:XMLにはルート要素がありません。私は<xml>をルートとして追加しました。

try { 
    doc = new ActiveXObject("Msxml2.DOMDocument.6.0"); 
    var xml_string = '<xml/><somenode><child>Hello</child></somenode> 
        <somenode><child>good bye</child></somenode></xml>'; 
    doc.loadXML(xml_string); 
    doc.setProperty("SelectionLanguage", "XPath"); 
    var node = doc.selectNodes("/xml/somenode"); 
    console.log("node is "+node.length); 
} 
catch (e) 
{ 
    console.log("inside catch"+e); 
} 
関連する問題