2014-10-17 67 views
0

我有以下代码来处理点击行或单个单元格。这puzzels我DataTable jquery选择器没有触发

$(document).ready(function() { 
    var JSON_URL = '{% url "technician_activity" %}'; 
    var oTable = $('#technician_activity').dataTable({ 
     "processing": true, 
     "serverSide": true, 
     "ajax": JSON_URL , 
     "jQueryUI":  true 
    }); 
    alert("Without this alert selectors don't work? oTable = " + oTable); 
    oTable.$('tr').click(function() { 
     var data = oTable.fnGetData(this); 
     alert("Column " + data); 
    }); 
    oTable.$('td').click(function() { 
     var data = oTable.fnGetData(this); 
     alert("Cell " + data); 
    }); 

}); 

一两件事是没有第一个警报声明

alert("Without this alert selectors don't work? oTable = " + oTable); 

选择了TR和TD不工作,这是很不解,我 - 的区别是什么,这个警报( ) 正在做?

+0

我没有答案,但我认为'alert'给了一些时间来从服务器获取数据 – slackmart 2014-10-17 23:28:48

+0

不,我不这样做,我等待所有的数据行(5其中总计!)被提取。然后点击行/列,代码中显示的选择器不能在没有初始警报的情况下工作()... – 2014-10-17 23:49:15

回答

1

我现在使用的代码如下建议 - http://www.datatables.net/examples/server_side/select_rows.html

但它仍然是问题,为什么在代码中,我最初发布时,与第一个警报()语句工作的事情,但他们没有当警报工作声明是缺席....

只是为了好奇的缘故想了解什么事情在那里如果有人有想法。

+1

此外,DataTable论坛上的某位人员提供了有关alert()的原因的解释,而不是没有它 - http:/ /datatables.net/forums/discussion/comment/67161#Comment_67161 – 2014-10-20 22:53:16