2012-09-14 41 views
0

我爲我的應用程序使用數據表,但multiselect工作在第一頁,但它似乎不工作與分頁頁2和3。jQuery Datatable多選不工作在分頁2頁

守則,

$(document).ready(function() { 
     $('#example tr').click(function() { 
      $(this).toggleClass('row_selected'); 
     });  
    }); 

和css是

table.display tr.even.row_selected td { 
background-color: #efefef; 
} 

table.display tr.odd.row_selected td { 
background-color: #efefef; 
} 

我應該包括些什麼,使多選工作的其他網頁? 或者代碼有問題嗎?

請幫

感謝,

回答

1

2個東西..

1.確保包括在您第2頁的JS代碼和第3頁

2.可能是你的您需要delegate

$(document).ready(function() { 
     $('#example').delegate('tr','click', function() { //example -> tableid 
      $(this).toggleClass('row_selected'); 
     });  
    }); 
+0

哇,它的工作....非常感謝你.... –

+0

接受答案,如果它的工作.. :) – coolguy

1

你動態修改DOM,所以你需要的,如果使用jQuery 1.7+

$(document).ready(function() { 
    $('#example').on('click','tr', function() { 
     $(this).toggleClass('row_selected'); 
    });  
}); 

委託或者與.delegate或。對,或者使用jQuery 1.6和更低

$(document).ready(function() { 
    $('#example').delegate('tr', 'click', function() { 
     $(this).toggleClass('row_selected'); 
    });  
}); 

通過委派你綁定事件處理程序到父元素..然後它會監聽事件何時冒出來..例如,當您單擊tr時,它會在此示例中冒泡document,然後文檔處理事件..

如果您嘗試將其與regul綁定AR方式

$('tr').click()function(){}); 

$('tr').bind('click',function(){}); 

$('tr').on('click',function(){}); 

他們期望tr元素是可在DOM準備好時 - (如果你把你的代碼在一個document.ready函數中) - 否則沒有事件會被綁定到元素

+1

非常感謝你.... + 1 –