2012-03-10 2 views
0

こんにちは私はその選択時に高い光にDataTableの行を取得しようとしていますが、下のコードは動作しません。私はクラスが要素に追加されていることがわかりますが、色は変わりません。datatable行notlligting

$(document).ready(function(){ 

var table = $('#table').dataTable({ 

'bProcessing':true, 
"bJQueryUI": true, 
"bFilter": false, 
"sAjaxSource":'data.php', 
    "bAutoWidth": false, 
    "aoColumns": [ 
      {sWidth: '70px' 
       }, 
        { 
       } 

       ] 
    }).makeEditable({ 
    //make editable code 

      }], 


    }); 

     $("#table tbody").click(function(event) { 
     $(table.fnSettings().aoData).each(function(){ 
      $(this.nTr).removeClass('row_selected'); 
     }); 
     $(event.target.parentNode).addClass('row_selected'); 
    }); 



}); 

JavaScriptの新機能ですので、ハイライトの例としてdatatableのコードを使用しました。任意のアイデア、ありがとう。

+1

クラスが正しく追加されている場合は、CSSルールに問題がある可能性がありますか? – JJJ

+0

ありがとう、それは問題でした。私はcssで事前に遊んでいたが、それは仕事をしなかった。私はルールを追加しました:.row_selected td { \t背景色:#000000; }とそれが動作します – Sun

答えて

0

データテーブルAPIのレンダリングメソッド内にイベントハンドラを追加する方法はありますが、これはもっと簡単になるでしょう。

私は将来的に追加された行はまた、ハンドラが彼らに

http://api.jquery.com/on/

$("#table tbody").on('click','tr',function(event) { 
    /* find "selected" class and remove class */          
    $('#table tr.row_selected').removeClass('row_selected'); 
    /* "this" is current row*/ 
    $(this).addClass('row_selected'); 
}); 
をバインドしていますあなたはページングを持っている場合には、イベントをバインドする()メソッド、または将来の行の追加を使用しました