2015-12-10 32 views
0

我正在将我网站上的yadcf版本从0.6.9升级到0.8.8。 (我也从数据表1.9.4升级到1.10.10)yadcf界面更改为exFilterColumn混淆

看到my sandbox site

我从两个电话我的电话更新为yadcf.exFilterColumn的0.6.9版本在my production site和0.8.8版本到一次调用,因为现在默认值是一对数组。

但是当页面加载时,我的过滤数据集是空的,我需要选择一个性别,然后单击所有数据以显示所有数据。

我确定这是我没有得到的新界面。

更新:简化的沙箱版本here。见文件TestStandings.js

更新2: Daniel指出性别过滤器的“-1”不起作用。由于某些原因,显然usegender =“-1”在0.8.8中的表现与0.6.9相同。我可以试着弄清楚为什么它曾经工作过,但这似乎没有什么效果。

我添加以下代码exFilterColumn调用后(这是必要的,以在一些使用情况进行过滤的性别)

// reset gender column if didn't mean to filter 
    if (usegender == "-1") { 
     yadcf.exResetFilters(_rrwebapp_table, [genderCol]) 
    } 

但这变得异常的jquery.dataTable.yadcf.js的3624线,因为settingsDt.aanFeatures.f未定义

更新3:而在数据表侧的调试,我从 '< “H” CLPR> T' 为默认 'lfrtip' 改变sDom。上面提到的例外消失了,表格正确加载。

回答

1

这里是你应该如何处理您的方案

其错误,要求过滤的-1值,因为在表中没有这样的价值,所以为了以防调用exFilterColumn你之前应该重新设置一个特定的列使用exResetFilters with noRedraw set to true(从抓取0.8.9.beta。31),你应该调用这个函数以前exFilterColumn


老答案

我已经注意到了多次调用exFilterColumn同一个表,而实际上你应该只把它一次,只需设置表中每列所需的值,

See showcase page (first table)

同时注意以下

yadcf.exFilterColumn(firstTable, [ 
    [1, { 
     from: 1, 
     to: 40 
    }], 
    [3, "a_value"] 
]); 

相关的代码。如果它仍然没有goodm请提供您的表/ yadcf初始化代码和调用exFilterColumn


更新代码:

我注意到您正在使用以下代码行

yadcf.exFilterColumn(_rrwebapp_table, [[divisionCol, usedivision], [genderCol, usegender]])

如果您usegender设置为"-1"这是没有意义的,因为选择输入复位选项它的价值,所以请确保您不使用"-1"作为值在您的通话exFilterColumn ......

+0

有第二个电话,对于令人困惑的剪切/粘贴错误感到抱歉。删除第二个电话没有效果。 我简化了http://sandbox.steeplechasers.org/scoretility/_teststandings/上的代码。请参阅TestStandings.js中的函数视图 –

+0

关于“-1”,这可能是0.6.9和0.8.8之间的不同行为的原因(您可以在生产版本中看到这一点,但必须通过较大的代码集)。我使用“-1”来初始化0.6.9中的性别过滤器。我需要用0.8.8来清除过滤器的值是多少? –

+0

在exFilterColumn调用之后,我添加了一个调用exResetFilters的函数,但是这个异常。请参阅更新的问题。 –