-2

つまり、ブラウザで find("Section") が機能しない 私はこのxmlコンテンツを持っています

    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");});

つまりブラウザでは、このコードは機能しません。他のブラウザでは正しい結果が表示されます。誰かが解決策を知っている場合は、更新してください。

4

1 に答える 1

0

XML 宣言は、「自己終了」または対になったタグではありません。スラッシュを削除します。

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

次のようにする必要があります。

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

「Section」は子要素ではないため、を使用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) の Developer Tools コンソールで実行すると、two_column問題なく期待される結果 ( ) が得られます。

于 2013-04-18T15:01:03.793 に答える