2012-02-08 12 views
0

ソートにjqueryデータテーブルを使用しました。通常の状態では正常に動作します。実行時に値を変更した場合、ソートは機能しません。jqueryデータ型のソートが実行時の値に対して機能しない

$(document).ready(function() { 

    $('#pls-batting').dataTable({ 

      }); 
    }); 

それぞれASCとDESC順に表示され、対応する列を率いる 'いいえ#' をクリックすることで:

は、これは私のテーブルデータ

ソートに使用
 <table width="94%" cellpadding="2" cellspacing="1" class="tablehead" id="pls-batting"> 
    <thead>  
    <tr class="tab_head" align="right" id="pls-play" > 
    <th width="44" align="center" ># No </th> 
    </tr> 
    </thead> 
    <tbody> 
    <tr id="116706"> 
    <td align="left" id='1' >test</td> 
    </tr> 
    <tr id="116707"> 
    <td align="left" id='2'>bbb</td> 
    </tr> 
    <tr id="116708"> 
    <td align="left" id='3' >xxx</td> 
    </tr> 
    </tbody> 
    </table> 

jqueryの方法です。これらのTD値は、

 document.getElementById(3).innerHTML = 'something'; 

を使用してオンロードを変更します。その結果、3番目の列の値は「何か」になります。ソートはこの値によって行われます。しかし、それは動作していません。

古い値が必要です。私を助けてください。ありがとう

+1

何か助けたい場合は、もっとコードを表示する必要があります。 – PiTheNumber

+0

私は私の説明を編集しました。より明確にする必要がある場合はお知らせください。 jQueryでは.live()が実行時の値をとります(つまり、クリック時に値を変更した場合は、その値が考慮されます)。同様に、データテーブルの並べ替えを実行する方法はありません。 –

答えて

1

DataTableでは、HTMLセルの内容を更新しないでください。 DTは、検索/並べ替えに内部JavaScript配列構造を使用し、このセルは表示値に過ぎません。

一部のセルを更新するには、DT fnUpdate関数を使用する必要があります(http://datatables.net/api#fnUpdateを参照)。テーブル内のセルを更新する例は次のとおりです。

var oTable = $( '#example')。dataTable(); oTable.fnUpdate( 'New content'、10,3);

セルは行/セルの位置によって参照されることに注意してください。行/セルの位置がわからない場合は、http://datatables.net/api#fnGetPosition関数を使用して、id 3のTRの位置を検索し、この情報を使用してfnGetData関数を使用してセルデータを更新することができます(http://datatables.net/api#fnGetPositionの例を参照してください)。

Jovan

関連する問題