jQuery XML解析器打印变量两次

时间:2012-10-16 14:08:30

标签: jquery xml cordova

我使用以下代码通过jQuery解析我的Phonegap Android应用程序中的XML文件:

    $( function() {
        var XMLURI = 'http://gdata.youtube.com/feeds/api/users/remcob00/uploads?max-results=50&alt=rss&lr=nl&orderby=published';
        $.ajax({
            url: XMLURI,
            success: function(xml){
                setTimeout(
                function(){
                        feedItem = '';



                    $(xml).find( "item" ).each(
                        function(){
                            var item = $(this), 
                                title =  item.find('title').text(),
                                link =  item.find('link').text(),
                                description =  item.find('description').text(),
                                pubDate =  item.find('pubDate').text();


                            var idname = "v";
                            idname = idname.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
                            var regexS = "[\\?&]"+idname+"=([^&#]*)";
                            var regex = new RegExp( regexS );
                            var results = regex.exec(link);
                            var videoid = results[1];

                            feedItem = feedItem + '<li data-corners="false" data-shadow="false" data-iconshadow="true" data-wrapperels="div" data-icon="arrow-r" data-iconpos="right" data-theme="a" class="ui-btn ui-btn-icon-right ui-li-has-arrow ui-li ui-li-has-thumb ui-btn-up-a"><div class="ui-btn-inner ui-li"><div class="ui-btn-text">';
                            feedItem = feedItem + '<a href="video.html?v=' + videoid + '&title=' + encodeURIComponent(item.find('title').text()) + '&description=' + encodeURIComponent(description) + '" rel="external" class="ui-link-inherit">';
                            feedItem = feedItem + '<img src="http://img.youtube.com/vi/' + videoid + '/0.jpg" class="ui-li-thumb">';
                            feedItem = feedItem + '<h3 class="ui-li-heading">' + title+ '</h3>';
                            feedItem = feedItem + '</a></div><span class="ui-icon ui-icon-arrow-r ui-icon-shadow">&nbsp;</span></div></li>';
                    });
                    $('#list').append(feedItem);

                }
                , 5000);
            },
            error: function(){
                // $('#blogheader').html('<li>Kan video's niet laden, mogelijk heb je geen internet verbinding</li>');
            },
            dataType: "xml"
        });
    });   

此代码打印项目的标题和说明两次而不是一次。

1 个答案:

答案 0 :(得分:0)

我发现这是YouTube Feed中的一个问题,如果我使用json feed没有问题。