1

subreddit の reddit XML フィードを使用しようとしていますが、JavaScript での解析に問題があります。

私はこのコードを持っています

function parseXml(xml) {
    var xmlResult = "";
    $(xml).find("item").each(function() {
        xmlResult = xmlResult + ($(this).find("title").text()) + "<br />";
    });
    document.write(xmlResult);
}

問題は、タイトルが重複していることです。

Reddit XML フィードには、タイトルと media:title タグがあります。この重複を修正するにはどうすればよいですか。

例: タイトルは「投稿の本当に素晴らしいタイトル」であり、私の出力では「投稿の本当に素晴らしいタイトル本当に素晴らしい投稿のタイトル」が得られます。

4

1 に答える 1

0

問題は、要素に同じ値で名前が<item>付けられた 2 つの要素が含まれていることです。<title>

<item>
  <title>Really awesome title of post</title>
  ...
  <media:title>Really awesome title of post</media:title>
  ...
</item>

セレクターを使用するとtitle、jQuery は両方を返し、それらのテキストを連結します。

回避策は、最初の要素を選択することです。

$(this).find("title").first().text()

とにかく要素には同じ値が含まれているため、どちらを取得しても問題ありません。

于 2014-12-20T05:13:27.697 に答える