2011-08-11 177 views
1

我在使用jquery.datatables.js爲我的數據表創建自定義類型時遇到了一些問題。數據表:自定義類型

我的表初始化看起來是這樣的:

drawTable['#<?= $tab ?>'] = function() { 
        $('#sites_<?= $tab ?>').dataTable({ 
        'iDisplayLength' : 25, 
        'aaSorting': [[5, 'desc']], 
        'aLengthMenu': [[25, 50, 100, -1], [25, 50, 100, 'All']], 
        'aoColumns' : [ 
         {'sType' : 'formatted-num'}, 
         null, 
         null, 
         null, 
         {'sType' : 'formatted-num'}, 
         {'sType' : 'formatted-num'}, 
         {'sType' : 'formatted-num'}, 
         {'sType' : 'formatted-num'}, 
         {'sType' : 'formatted-num'}, 
         {'sType' : 'formatted-num'} 
        ] 
       }) 
}; 

然後:

$(document).ready(function() { 
       drawTable['#<?= $tab ?>'](); 
       drawnTable['#<?= $tab ?>'] = true; 
      }); 

的$標籤是從服務器選擇一些值。

,對於自定義類型的作品很好,但我需要創建自己的類型。我該怎麼做?我一直在讀這裏的一些例子:http://www.datatables.net/plug-ins/type-detection,但他們似乎都是爲表開始,只有$(document).ready(function() { $('#example').dataTable(); });

不確定如何至少實現其中一個到我的列之一,如果我可以在至少我會寫我自己的功能。謝謝!

回答

3

這是它是如何做:

jQuery.fn.dataTableExt.oSort['num-html-asc'] = function(a,b) { 
    a = ;//changes to remove html signs 
    b = ;//same as above 
    return ((a < b) ? -1 : ((a > b) ? 1 : 0)); 
}; 

jQuery.fn.dataTableExt.oSort['num-html-desc'] = function(a,b) { 
    a = ;//changes to remove html signs 
    b = ;//same as above 
    return ((a < b) ? 1 : ((a > b) ? -1 : 0)); 
}; 

包括功能包括datatables.js之後,但在初始化之前。然後在需要使用的列中

{'sType' : 'num-html'}, 

就是這樣。