2012-02-11 19 views
0

次のデータのテーブルソートのためにjqueryデータテーブルを使用します。ここでJqueryデータ型数値ソート

 <table width="50%" border="0" id="pls-pitching"> 
    <tr> 
    <td><span>1</span> 
    <input name="t" type="text" value="1" /></td> 
    </tr> 
    <tr> 
    <td><span>5</span> 
    <input name="t" type="text" value="5" /></td> 
    </tr> 

    <tr> 
    <td><span>2</span> 
    <input name="t" type="text" value="2" /></td> 
    </tr> 
    <tr> 
    <td><span>3</span> 
    <input name="t" type="text" value="3" /></td> 
    </tr> 
    <tr> 
    <td><span>10</span> 
    <input name="t" type="text" value="10" /></td> 
    </tr> 
    </table> 

私は、テキストボックスの値のソートを実装することができませんでした1,2,3,5,10 として、テキストボックスの値をソートしたいです。だから私は<span>タグの前に(<span>10</span>)のようなテキストボックスを追加しました。これで値がソートされます。しかし、それは1,10,2,3,5のように並べ替えます

しかし、私は数値ソートのようにこれをソートする必要があります。

私は、次のJavaScriptのコマンドに

$('#pls-pitching').dataTable(); 

を使用並べ替え、テキストボックスの値を実装するための任意の可能性はありますか?必要な作業をしてください。ありがとう

答えて

0

比較を行うために独自の関数を書く必要があります。

0

Here is example of how to do itは、私は同じ問題を持っていたし、これは(数値のため)、私のために働い何

jQuery.fn.dataTableExt.oSort['num-html-asc'] = function(a,b) { 
    var x = a.replace(/<.*?>/g, ""); 
    var y = b.replace(/<.*?>/g, ""); 
    x = parseInt(x); 
    y = parseInt(y); 
    return ((x < y || isNaN(y)) ? -1 : ((x > y || isNaN(x)) ? 1 : 0)); 
}; 
jQuery.fn.dataTableExt.oSort['num-html-desc'] = function(a,b) { 
    var x = a.replace(/<.*?>/g, ""); 
    var y = b.replace(/<.*?>/g, ""); 
    x = parseInt(x); 
    y = parseInt(y); 
    return ((x < y || isNaN(x)) ? 1 : ((x > y || isNaN(y)) ? -1 : 0)); 
}; 

2.Setソートのタイプながら、一種の

1.Defineカスタムタイプでありますデータ化可能化の初期化、

$(".fooTable").dataTable({ 
    "aoColumns": [ 
     {"sType" : "num-html" }] 
}); 
関連する問題