2009-01-16 14 views
6

uzanır. Masamdaki sütunlarımın üzerinde, tarihi mm/yy biçiminde gösterir.mm sıralamak için jQuery tablesorter kullanma/yy Bir masa sıralamak için jquery tablesorter eklentisi kullanıyorum

<tr> 
    <td class="col-name">...</td> 
    ... 
    <td rel="2000" class="col-dob">10/00</td> 
    ... 
</tr> 
<tr> 
    <td class="col-name">...</td> 
    ... 
    <td rel="1986" class="col-dob">11/86</td> 
    ... 
</tr> 

Not:

  • Her hücre
  • tarihi
  • tarihle
  • Hücre yıl da

aldığı aa/yy biçiminde görüntülenir benzersiz sınıfa sahip

: My jQuery kod aşağıda gibidir

Sorunum tablesorter yıl 1900 yerine 2000 olarak 00 yorumlar ve dolayısıyla sıralı verilerin doğru olmadığıdır.

Herhangi ipucu bunu nasıl çözebilirim? JQuery 1.2.6 ve tablesorter'ın en son sürümünü kullanıyorum. dayalı rel için new Date(dateSplit[1], dateSplit[0], 1);

Sana (kolayca) erişim elde edebilirsiniz sanmıyorum:

cevap

9

tablesorter dokümantasyon genellikle oldukça yararsız, ben buldum. ,'un çok beğendiği gibi görünüyor, ancak detaylarda eksik. Bu durumda

, bu sana çözümleyici için işlev imzayı söylemez. Neyse ki, onu bulmak için the unminified code'u okuyabilirsiniz.

Orada biz metadata ayrıştırıcı bunu yapar bulmak: benzer en az

format: function(s, table, cell) { 
    // format your data for normalization 

    var dateSplit = s.split('/'); 
    var year = $(cell).attr('rel'); 

    if(2 !== dateSplit.length) 
     return 0; 

    return new Date(year, dateSplit[0], 1); 
}, 

Veya:

format: function(s,table,cell) { 

Bu şekilde biçim yöntemini ayarlamak anlamına gelir. Bunu gerçekten denemedim. Ama en azından çok yakın olmalı.

+0

Teşekkürler David. Bunu pazartesi günü test etmeyi bekliyorum. Burada güncellenecek. – hitec

+0

Bu çözüm benim sorunumu giderdi. Teşekkürler David. – hitec

+0

Bu ayrıca bazı boş değerlere sahip bir tarih sütunu sıralamada kullanışlıdır. Bunu gönderdiğiniz için teşekkürler. –

0

ben size sorun Tarihi yapıcı ve anlam ayrımı olmaksızın geçiyoruz 2 basamaklı yıl dizesi olduğunu bulacaksınız düşünüyorum ayrıştırıcıda. Hücrenin tüm içeriğini içeriyor mu? Hücredeki verilerde <span style="display : none">CC</span>MM/YY gibi bir şey yapabilir misiniz? Etiketleri çıkartın ve ayrıştırmak için CC ile YY'yi birleştirin mi?

+0

Neyse ki, ayrıştırıcı işlevi hücre nesnesini de geçiyor. Cevabımı gör. :) – David

İlgili konular