我在我的动态数据上应用了自定义jQuery数据表过滤器,该数据来自REST API结果。代码如下:
$('#jQmyCases thead').append('<tr id="filters"><th col="ItemColor">Item Color</th><th>..</th>....</tr>'); // Many filters r there but i have only added one
加载数据后,我使用以下代码段初始化我的自定义过滤器:
thead
首先,我将过滤器字符串附加到$("#filters th").each(function (i) {
var colheader = $(this).attr('col');
var select = $('<select id="ddl' + colheader + '" style="width:80px;"><option value="">Selecteer ' + $(this).attr('col') + '</option></select>')
.appendTo($(this).empty())
.on('change', function () {
dataTableExample.column(i)
.search($(this).val())
.draw();
});
dataTableExample.column(i).data().unique().sort().each(function (d, j, full) {
try {
if (full[j] != null) {
if (i == 3) { // Column Color
var itemColor = full[j];
select.append('<option value="' + itemColor + '">' + itemColor + '</option>');
}
}
}
catch (err) {
console.log(err);
}
});
});
中,然后使用接收数据中的可用选项将自定义过滤器与dropdwon绑定,请参阅下面的代码段:
saveState
现在我必须保存数据表的状态,以便在下次重新加载页面时,它会保存下拉列表的值并显示之前的结果。
我看了here,它显示了我想要的一些逻辑,但它有静态选项作为过滤器。
问题:如何在jQuery dataTable插件上使用自定义过滤器实现<span class="text-light ng-binding" ng-show="calculatorStatus == 'COMPLETED'" style="font-size: 0.85em;">
0.413%
<br/>
0.012%
<br/>
--
</span>
选项?有人有解决方法吗?
非常感谢任何帮助。