0

次の例に基づいて、IE で xml 文字列を解析しようとしています: http://dean.edwards.name/weblog/2006/04/easy-xml/

<!DOCTYPE HTML>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<title></title>

<script type="text/javascript" src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">

    $(function(){

        var xml = document.createElement("xml");
        xml.src = '<test><node1>Test</node1></test>';
        document.body.appendChild(xml);
        var xmlDocument = xml.XMLDocument;
        document.body.removeChild(xml);

    });

</script>
</head>
<body>

</body>
</html>

フィドル

ただし、機能していません。エラーは発生しませんが、何も起こっていません。

有効な xml 文字列に基づいて IE のクライアント側で XML ファイルを生成する方法はありますか? 唯一のオプションはactiveXですか?

前もって感謝します

4

2 に答える 2

4

私が取り組んでいるバリアントは、xml オブジェクトを作成するのではなく、代わりにラッパー div を作成することです。

<script type="text/javascript">
  $(function(){
    var div, xmlDocument;
    div = document.createElement('div');
    div.innerHTML = '<xml><test><node1>Test</node1></test></xml>';
    document.body.appendChild(div);

    xmlDocument = div.firstChild.XMLDocument;
    document.body.removeChild(div);
  });
</script>
于 2012-11-14T08:59:39.480 に答える
0

ActiveX は確かに 1 つのオプションです。コードは次のようになります。

var xml = '<test><node1>Test</node1></test>';
var xmlDoc = new window.ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async = "false";
xmlDoc.loadXML(xml);

alert(xmlDoc.documentElement.nodeName);
于 2012-05-09T17:34:57.533 に答える