0

RSS フィードを解析して表示していますが、1 つのレコードしか表示されていません。次の JavaScript を使用しています。すべてのレコードを 1 つの div に表示する方法を教えてください。

  <script type="text/javascript">
$(document).ready(function () {
  $.get("http://www.footballfriendsonline.com/blogs/rss.xml", function (data) {
  $(data).find('item').each(function(i){
   var title = $(this).find('title').text();
    var container=$(this).find('description').text();
     var img_url = $('img',container).attr('src');
     var url=$(this).find('link').text();

   var result='<li><a href="'+url+'" target="_blank"><span>'+title+'</span><span><img src="'+img_url+'" width="154" height="115"></span></li>';
 $("#new_widget").html(result);
  });
   });
  });
   </script>
   <div id="new_widget"></div>
4

3 に答える 3

1

appendの代わりに使用html

htmldiv の前の html をクリアするため、最後のフィードが取得されます

このような

$("#new_widget").append(result);

それ以外の

$("#new_widget").html(result);
于 2012-10-27T05:19:55.273 に答える
0

$.each ループ内でこれを呼び出して、html を上書きしているようです...ループの外でこれを呼び出す必要があります..

$("#new_widget").html(result);

このコードを試してください

$(document).ready(function() {
    $.get("http://www.footballfriendsonline.com/blogs/rss.xml", function(data) {
        var result = '';
        $(data).find('item').each(function(i) {
            var title = $(this).find('title').text();
            var container = $(this).find('description').text();
            var img_url = $('img', container).attr('src');
            var url = $(this).find('link').text();

            result += '<li><a href="' + url + '" target="_blank"><span>' + title + '</span><span><img src="' + img_url + '" width="154" height="115"></span></li>';

        });
        $("#new_widget").html(result);
    });
});​
于 2012-10-27T05:23:05.727 に答える
0

スクリプトには 2 つの問題があります。まず、各ループの結果は前のものを上書きしています。次に、li 要素を div にアタッチしますが、それらを ol または ul 要素にアタッチする必要があります。

例えば:

<script type="text/javascript">
var result="";
$(document).ready(function () {
$.get("http://www.footballfriendsonline.com/blogs/rss.xml", function (data) {
$(data).find('item').each(function(i){
...
result+='<li><a href="'+url+'" target="_blank"><span>'+title+'</span><span><img src="'+img_url+'" width="154" height="115"></span></li>';
});
$("#new_widget").html(result);
});
});
</script>
<ul id="new_widget"></ul>
于 2012-10-27T05:32:35.963 に答える