Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何响应用户在jQuery.dataTables中选择一行?_Javascript_Jquery_Datatables - Fatal编程技术网

Javascript 如何响应用户在jQuery.dataTables中选择一行?

Javascript 如何响应用户在jQuery.dataTables中选择一行?,javascript,jquery,datatables,Javascript,Jquery,Datatables,我正在使用jQuery.dataTables编写一个web应用程序。我肯定我以前做过,但是我很难找到正确的方法让我的页面对用户点击一行做出响应 其基本思想是,我希望能够通过向用户显示有关该行的更多信息来响应对该行的单击。我想在单击行时调用一些函数。我可能还需要在每行中放置一个或多个按钮,单击这些按钮可以执行特定于行的功能,例如导航到表单以编辑或删除行 $('#tblData').dataTable({ data: data, columns: columns, // only c

我正在使用jQuery.dataTables编写一个web应用程序。我肯定我以前做过,但是我很难找到正确的方法让我的页面对用户点击一行做出响应

其基本思想是,我希望能够通过向用户显示有关该行的更多信息来响应对该行的单击。我想在单击行时调用一些函数。我可能还需要在每行中放置一个或多个按钮,单击这些按钮可以执行特定于行的功能,例如导航到表单以编辑或删除行

$('#tblData').dataTable({
    data: data,
    columns: columns, // only column names specified
    bFilter: false,
    bPaginate: false,
    bInfo: false
});

我本以为“Events”引用可能会回答这个问题(),但我没有这样的运气。

要在表的行上放置事件,我将使用.on方法:

$("#tblData").on('click','tbody > tr',function(e){ });

然后,如果将按钮放置在行中,则可以使用按钮选择器执行相同的操作。只需确保在按钮单击中使用e.stopPropagation(),以防止行单击触发。

只是一个简单的说明,即
jQuery的方式。
工作时,只要
#tblData
对象持续存在,此处理程序应始终捕获从
tbody>tr
冒出的事件。是的,没错。发生在#tblData的子体上的所有事件都将传播到#tblData,除非对其中一个子体中的事件对象调用stopPropagation()(或者返回false,我认为具有类似效果)。