2014-09-19 49 views
0

我有一個函數可以將新行添加到表中。然後,我想將表格的選定行更改爲添加的新行。所以我從當前選定的行中刪除選定的類。dataTable addClass('selected')由於某種原因不工作

$('#regressionListTable tr.selected').removeClass('selected'); 

我添加的行...

var rowAdded = analysisTable.row.add(data.analysis).draw(false); 

然後我的 '選擇' 類添加到這個添加的行。

$(rowAdded).addClass('selected'); 

但由於某些原因最後一步不工作,我的表沒有行後,我添加一行被高亮顯示。

有沒有人知道爲什麼會發生這種情況?

謝謝。

+0

這不,當鼠標懸停在數據錶行被自動突出顯示。然後,如果鼠標移出該行,突出顯示將消失? – andrex 2014-09-19 14:08:27

回答

3

.row.add()函數將返回datatable對象,所以將.draw()函數。因此,rowAdded不是您添加的新行。

你可以添加.node()到它的結束,以獲得添加的行:

var rowAdded = analysisTable.row.add(data.analysis).draw(false).node(); 
+0

謝謝,這工作完美,我明白爲什麼。 – OneTwo 2014-09-19 14:13:12

0

你在你的代碼在這裏調用Draw方法:

VAR rowAdded = analysisTable.row。添加(data.analysis).draw(假);

不返回添加的行。相反,它會返回數據表對象。

您需要通過調用數據表上的節點()方法來獲取已添加的節點。 您的代碼應該看起來更像這個返回該行:

var rowAdded = analysisTable.row.add(data.analysis).draw(false).node(); 
$(rowAdded).addClass('selected'); 

RE:row.add()

相關問題