Jquery Datatables无需单击即可获取行数据

Jquery Datatables无需单击即可获取行数据,jquery,datatables,Jquery,Datatables,我使用DataTables来显示消息列表 我需要一种方法,根据传递给查询字符串页面的id获取特定的数据行 例如:www.webpage.com?id=2 我已经在jQuery变量中有了id。 现在我只需要访问与该id关联的DataTable行 基本上,我需要引用该行,而无需单击它 有什么建议吗 一种方法是使用fnGetPosition和fnGetData 这里是一个外部按钮的工作,该按钮选择具有特定ID的行 在loadready页面上选择具有特定ID的行的另一个示例 看看这个函数 $("#wow

我使用DataTables来显示消息列表

我需要一种方法,根据传递给查询字符串页面的id获取特定的数据行

例如:www.webpage.com?id=2

我已经在jQuery变量中有了id。 现在我只需要访问与该id关联的DataTable行

基本上,我需要引用该行,而无需单击它

有什么建议吗

一种方法是使用fnGetPosition和fnGetData

这里是一个外部按钮的工作,该按钮选择具有特定ID的行

在loadready页面上选择具有特定ID的行的另一个示例

看看这个函数

$("#wow").click(function() {

    var rowIndex = table.fnGetPosition($("#example input[value=\'TridentVal\']").closest('tr')[0]);
    alert(rowIndex);
    var aData = table.fnGetData(rowIndex);
    alert(aData[0]); // will show first column data
});​
这是使用相关数据选择输入的方法…:

$("#example input[value=\'TridentVal\']")

例如表id,用所需的id替换TridentVal,首先必须使用jQuery获取表行

然后使用fnGetData获取行数据

fnGetData接受行节点或整数,因此您也可以将行索引作为参数传递


如果使用TableTools扩展,则可以使用fnSelect。从:

当然,您需要修改选择器,以便它选择具有您的id的行。

fGetData现在已过时。 这将记录当前版本中的cell.data访问模式

您尝试过数据表中的fnSelect功能吗?我没有。。。那是干什么用的?我确实查看了他们的API列表,但我没有看到当前列出的那个?它可能是新的还是旧的?您只需要对元素的引用,还是指数组中的行数据或其他内容?这取决于Gigo。。。关于DataTables需要什么,以便引用该行中的数据。目前,我正在使用var aData=oTable.fnGetDatanTr;在我实际单击行时获取数据。因此,我需要一种方法来替换nTr,当我单击该行时就是这样。@CraigThompson:抱歉,fnSelect是TableTools中的一个函数,它是dataTables附加组件。我经常使用它,我不区分。参考资料如下:这看起来很有希望。。。我将如何使用fnGetPosition引用所需的特定行?例如ID=2的行?我是否只需要说.tr'[2]?不,保留.tr'[0]的原样。。。是否有一列保存行的id?如果不添加一些隐藏的输入样式=显示:无,值=行的ID…是,Datatable中的第一列是一个隐藏列,其中包含消息IDI。我只是不熟悉用适当的行id替换某些选择器的方法。我如何从传入的id中获取适当的行索引?@CraigThompson在我的代码中,我使用eq获取索引0上的tr,您可以将其更改为eq1、eq2、eqn。或者使用index。@CraigThompson为什么要获取行索引,可以将行节点作为参数传递。我可以这样说。find'tbody tr:eq'+msgID+.get0;对于我要查找的特定行?@CraigThompson如果msgID数据位于等效行上,则为“是”。不幸的是,我不确定如何修改该选择器以选择正确的行。
$("#example input[value=\'TridentVal\']")
var $rowNode = $('#myTable').find('tbody tr:eq(0)').get(0);
var data = table.fnGetData($rowNode);
$(document).ready( function () {
    $('#example1').dataTable( {
        "sDom": 'T<"clear">lfrtip',
        "oTableTools": {
            "sRowSelect": "single"
        }
    } );

    // Select the first row in the table automatically
    var oTT = TableTools.fnGetInstance( 'example1' );
    oTT.fnSelect( $('#example tbody tr')[0] );
});