如何在JQuery中按日期对xml数据进行排序

培根2305

该应用程序正在从RSS feed中提取信息,我需要按日期对文章进行排序。xml数据包含一个'Date'元素,该元素以ddmmyy格式列出日期。我的问题:是否可以在jQuery中实现排序功能,以对信息进行排序并以正确的日期顺序显示它?(日期顺序应该是显示的第一个条目,是最远的日期,例如:01/20/14然后2014年1月7日,然后12/22/13等...这是我到目前为止的内容:

<script type="text/javascript">
 $(document).ready(function() {

        $('input[type=radio]').click(function() {
            var id = this.id;
            if(id == 'radio-bio') { var categoryURL = '/BayAreaTech/wp-rss2.php?cat=15';}
            else if (id == 'radio-com'){ var categoryURL = '/BayAreaTech/wp-rss2.php?cat=13';}
            else if (id == 'radio-eleP'){ var categoryURL = '/BayAreaTech/wp-rss2.php?cat=9';}
            else if (id == 'radio-eleD'){ var categoryURL = '/BayAreaTech/wp-rss2.php?cat=10';}
            else if (id == 'radio-nano'){ var categoryURL = '/BayAreaTech/wp-rss2.php?cat=16';}
            else if (id == 'radio-opt'){ var categoryURL = '/BayAreaTech/wp-rss2.php?cat=12';}
            else if (id == 'radio-semi'){ var categoryURL = '/BayAreaTech/wp-rss2.php?cat=11';}
            else { var categoryURL = '/BayAreaTech/wp-rss2.php?cat=1';}

            $('#feedContainer').empty();
                        $.ajax({
                        type: 'GET',
                        url: categoryURL,
                        dataType: 'xml',
                        success: function (xml) {
                            $(xml).find("item").each(function () {
                                  var title = $(this).find("title").text();
                                  var date = $(this).find("Date").text();
                                  var region = date.substr(6);
                                        if (region.length < 3) { region = "ALL"; }  
                                  var description = $(this).find("description").text();
                                  var descriptdisplay = description.substr(0, description.indexOf(",")+6); //Parsed DATE from description
                                        if (descriptdisplay.length > 35) { descriptdisplay = "See event for details"; }
                                    //var locationdisplay = description.substr(description.indexOf(",")+6,4); //Parsed the location from description
                                  var category = $(this).find("category").text();
                                  var linkUrl = $(this).find("link").text();
                                  var displaytitle = "<a href='" + linkUrl + "' target='_blank'>" + title + "</a>"  
                                  $('#feedContainer').append('<h3>'+displaytitle+'</h3><p>'+"Event Date: "+descriptdisplay+'</p><p>'+"Location: "+region+'</p');

                            });
                        }
                    });

        });
 });
 </script>
查理

建议您先将xml解析为可以排序的对象数组,然后再解析为html

success: function (xml) {
    var data=[];
    $(xml).find("item").each(function () {
      var dateText= $(this).find("Date").text()

      var item={
           title: $(this).find("title").text(),
           dateText =dateText,
           date : new Date( dateText),
           /* other properties*/
        }  
        /* push object to array*/
        data.push( item);

    });

    /* sort data*/
    data.sort(function(a,b){
         return a.date > b.date;
    });

     /* now parse to html */    
      $.each(data, function(index, item){


      })

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在python中按创建日期对目录列表进行排序?

如何在Java中按日期对目录中的文件进行排序?

如何在MongoDB中按日期对集合进行排序?

如何在Python中按日期时间对对象数组进行排序?

如何在Python中按日期对DataFrame进行排序?

如何按日期时间对熊猫数据框进行排序

如何在JavaScript中按日期对数组进行排序?

如何在RealmResults中按日期排序

如何在MySQL中按日期对相关结果进行分组和排序

如何使用jQuery按日期范围对JSON进行排序?

如何在数据日期中按日期对div排序

如何在python中按日期时间对列表进行排序?

如何在Power Bi中按矩阵的降序对列日期进行排序

如何在Excel中按数据对列进行排序/排序

如何在Pandas数据框中按行值对日期时间列进行排序?

如何在数据透视表中按字母数字顺序对列数据进行排序?

如何在MapReduce中按降序对数据进行排序?

按日期对 jQuery Ajax Json forEach 数据进行排序

如何按存储为值的日期对 Firebase 数据进行排序

如何在 jquery 中对数据属性进行排序?

如何在uitableview的cellForRowAt函数中按标题日期对响应进行排序

如何按日期对数据库进行排序?

我们如何在 Hibernate 中按日期对结果进行排序?

在react js中按日期对数据进行排序

如何在 PHP 中按日期对 MySQL 条目进行排序?

如何在Java中按<TD>日期对HTML元素进行排序并按<A>删除重复项?

如何在多个命名属性中按日期时间对数组进行排序

如何按 div 中的日期对数据进行排序/排序(JavaScript/React)

如何在javascript中按日期名称对数组进行排序?