0

Ajax 経由で XML を読み込んでいます。

スクリプトのスニペットを次に示します。

ajaxRequest.onreadystatechange = function()
    {
        if(ajaxRequest.readyState == 4)
        {
            document.getElementById('loading').innerHTML = 'done';
            google_xml = ajaxRequest.responseXML;
            document.getElementById('xml').innerHTML = 'XML: '+google_xml.toXMLString();
        }
    }

ロードしているページは XML ファイルです。ファイルがロードされるのは、alert(ajaxRequest.responseText); 分かった。しかし、それを XML として処理する方法がわかりません。上記のスクリプトは XML を文字列として < div id="xml" >< /div > 要素に入れると思っていましたが、そうではありません。

E4X を使用して Actionscript で XML を処理することはよくありますが、JS では決して使用しません。誰かヒントを教えてもらえますか? ありがとう!

4

3 に答える 3

3

使用しているブラウザーはわかりませんが、現在 E4X を適切にサポートしているブラウザーは Firefox だけです

ただし、この回答を拡張するには、別の方法を知っておく必要があります。

E4X だけでなく、ブラウザで XML を解析するための多くのサポートがあります。jQuery を使用して、dataType:XML を使用することもできます。xml.com/pub/a/ を参照してください。

于 2009-05-22T14:56:56.637 に答える
1

この同じ質問をフォローしている人のために:

var x = new XML('<xml>文字列値</xml>');

...これで、x 値は E4X で操作できる xml オブジェクトになりました!

于 2009-12-12T02:50:01.193 に答える
0

リクエストが満たされた後、DOMをサポートするXMLオブジェクトである xhr.responseXML を使用するだけです。ブラウザーが XmlHttpRequest オブジェクトをサポートしている場合、これは直接機能するはずです。また、IIRCでは、jQueryを使用してオブジェクトをラップし、独自のfind/eachメソッドを使用してオブジェクトをトラバースできます。

于 2009-05-23T02:08:16.883 に答える