Javascript 检索数据表中的指定行

Javascript 检索数据表中的指定行,javascript,datatables,datatables-1.10,Javascript,Datatables,Datatables 1.10,问题 是否有一种方法可以通过编程仅检索符合某些特定条件的行(例如具有特定索引的行) API有一个方法-,通过提供一个参数可以稍微操纵结果。但是,使用它,我最多只能使用当前表搜索,而不是自定义表搜索 问题 为了更好地理解,我将提供更多关于我努力实现的细节 我在用电脑。我想使用外部触发器一次选择一些行。现在我这样做: myTable.rows().every(function () { // ... // Check if the row should be selected and

问题

是否有一种方法可以通过编程仅检索符合某些特定条件的行(例如具有特定索引的行)

API有一个方法-,通过提供一个参数可以稍微操纵结果。但是,使用它,我最多只能使用当前表搜索,而不是自定义表搜索

问题

为了更好地理解,我将提供更多关于我努力实现的细节

我在用电脑。我想使用外部触发器一次选择一些行。现在我这样做:

myTable.rows().every(function () {
    // ...
    // Check if the row should be selected and if so:
    this.select();
    // ...
});
但是,这会导致表上触发与所选行数相同数量的
select
事件。我有一个绑定到此事件的处理程序,它根据所选行执行对外部API的请求。由于我无法辨别最后一个是哪个
select
,因此我的处理程序由于事件数量太多而不必要地滥发外部API

解决方案

  • 仅检索匹配的行并对其使用
  • 我认为这是最好的解决方案,因为
    select
    事件只会触发一次。然而,我不知道怎么做——因此这个问题

  • 在选择过程完成之前,防止处理程序调用外部API
  • 我想出了两个骇人的解决方案,作为最后的手段:

    • 根本不使用avent处理程序,只需在循环后调用API——我仍然需要使用该处理程序来处理手动行选择,但这可能就可以了

    • 对行进行两次迭代—第一次检查最后选择的行,然后禁用处理程序,执行第二次循环以实际选择行,并在选择最后一行之前启用处理程序


    我希望整个问题不要太令人困惑。要明确的是,我想找到答案的是顶部的问题,用斜体表示。

    选择器修饰符仅适用于选择所有行的情况。这不是为了通过选择器限制行。为此,您可以使用更灵活的行选择器:

    该页面上有几个示例,因此我将不在这里介绍这些选项


    正如您所建议的那样,如果使用此选择器,然后对返回的行集调用.select(),则回调将只触发一次。

    顺便提一下,这个问题写得很好。真高兴见到你。