2014-04-13 35 views
0

我有一個應用程序爲給定的日期設置了分隔符。如果日期是英文,但一切正常,但我的日期是荷蘭語(NL)格式,例如may = mei和february = februari。jquery mobile json var locale date

我怎樣才能改變我的日期,以英文格式,或者我怎麼能使用劃時代的時間設置分頻器(顯示月)

<script type="text/javascript"> 
    $('#home').live('pagecreate', function() { 
     $('#refresh').click(function() { 
      $('ul').listview('refresh'); 
     }); 

     var data = { "users":[ 
     { 
      "firstName":"First name", 
       "lastName":"Last name", 
       "joined": { 
        "date":"19 mei 2014", 
        "epoch":"1397400358" 
       } 
      }, 
      { 
       "firstName":"First name", 
       "lastName":"Last name", 
       "joined": { 
        "date":"19 april 2014", 
        "epoch":"1397400358" 
       } 
      }, 
      { 
       "firstName":"First name", 
       "lastName":"Last name", 
       "joined": { 
        "date":"18 april 2014", 
        "epoch":"1397400358" 
       } 
      }, 
      { 
       "firstName":"First name", 
       "lastName":"Last name", 
       "joined": { 
        "date":"1 mei 2014", 
        "epoch":"1397400358" 
       } 
      }, 
      { 
       "firstName":"First name", 
       "lastName":"Last name", 
       "joined": { 
        "date":"6 februari 2014", 
        "epoch":"1397400358" 
       } 
      } 
     ]} 

     data.users.sort(); 
     var dateList = $("#dates"); 
     for(var i=0, len=data.users.length; i<len; i++) { 
    dateList.append("<li>"+data.users[i].joined.date+"</li>"); 
     } 

     dateList.listview({ 
      autodividers:true, 
      autodividersSelector: function (li) { 
       var d = new Date(li.text()); 
       var month=new Array(); 
         month[0]="januari"; 
         month[1]="februari"; 
         month[2]="maart"; 
         month[3]="april"; 
         month[4]="mei"; 
         month[5]="juni"; 
         month[6]="juli"; 
         month[7]="augustus"; 
         month[8]="september"; 
         month[9]="oktober"; 
         month[10]="november"; 
         month[11]="december"; 
       return month[d.getMonth()]; 
      } 
     }).listview("refresh"); 
    }); 
</script> 

回答

2

可以使用的時代就是這樣,寫時代的李作爲數據屬性:

for(var i=0, len=data.users.length; i<len; i++) { 
    dateList.append("<li data-epoch='" + data.users[i].joined.epoch + "'>"+data.users[i].joined.date+"</li>"); 
} 

中autodviders代碼曆元轉換成日期,而不是日期字符串:

dateList.listview({ 
     autodividers:true, 
     autodividersSelector: function (li) { 
      var epoch = parseInt(li.data("epoch")); 
      var d = new Date(epoch * 1000); 
      var month=new Array(); 
        month[0]="januari"; 
        month[1]="februari"; 
        month[2]="maart"; 
        month[3]="april"; 
        month[4]="mei"; 
        month[5]="juni"; 
        month[6]="juli"; 
        month[7]="augustus"; 
        month[8]="september"; 
        month[9]="oktober"; 
        month[10]="november"; 
        month[11]="december"; 
      return month[d.getMonth()]; 
     } 
    }).listview("refresh"); 

DEMO

0

了一個小改變你的代碼,如果你有一個像「時代」一個JSON對象:「1397400358」,你可以用這個。

var epoch = parseInt(li.data("epoch")); 
var d = new Date(epoch * 1000);