2

jqueryでxmlを解析する必要があるWebアプリケーションに取り組んでいます。IE7 から IE10 および mozilla で動作する Web アプリを構築しています。私は自分のxmlに反復したかったので、以下のコードを書きました。

<script type='text/javascript' src="jquery/jquery-1.7.1.min.js"></script>

    <script type="text/javascript" language="javascript">
        var xml = '<root><cell id="1"> </cell><cell id="2"> </cell></root>';       
        //works in ie7
        $(xml).filter("cell").each(function () {
            alert('ie'+$(this).attr('id'));
        });
       //works in mozilla
        $(xml).find('cell').each(function () {
            alert('mozilla'+$(this).attr('id'));
        });
    </script>

しかし、私が見つけたのは、さまざまなブラウザーの xml からフェッチするために、さまざまなループ メカニズムを記述する必要があるということです。私はJqueryを使用しているので、これはちょっと変なので、すべてブラウザと互換性があるはずです。

それで、ブラウザチェックコードを書く必要がないように、すべてのブラウザで機能するxmlから読み取るより良い方法はありますか?

4

1 に答える 1

1

$()jQuery の main関数を使用して XML を解析しないでください。HTML 要素の組み込みinnerHTMLプロパティを使用して XML を HTML として解析しようとしますが、これは適切に機能しませんが、人々を誤った安心感に陥らせるのに十分なほど近づいています。parseXML()代わりに使用してください:

var xmlDoc = $.parseXML(xml);

$(xmlDoc).find("cell").each(function () {
    alert( $(this).attr('id') );
});
于 2012-04-12T14:02:54.810 に答える