01)我有一个JSON URL,我通过外部.js
文件动态地将数据加载到HTML表中。
02)我有一个名称过滤器(第一栏)。 (它工作正常)
03)我每行都有一个乘法函数。 (它工作正常)
04)我有一个3d列的最小 - 最大功能。 (虽然以前工作但它不起作用)。
链接位于:LINK
代码如下所示:
function minmax() {
filters();
$.fn.dataTable.ext.search.push(function(settings, data, dataIndex) {
return parseFloat(data[2]) >= parseFloat($('#counter-low').val() || data[2]) &&
parseFloat(data[2]) <= parseFloat($('#counter-high').val() || data[2]);
});
var table = $('table').DataTable();
$('#counter-low, #counter-high').on('keyup', table.draw);
}
我也在里面调用过滤器功能。我无法弄清楚它为什么不起作用。
UPD :我更改了标题中的调用顺序,现在效果更好。但仍然不能100%工作。
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="js/jquery.min.js"></script>
<script src="js/jquery.multiselect.js"></script>
<script type="text/javascript" language="javascript" src="js/jquery.dataTables.min.js"></script>
<script type="text/javascript" language="javascript" src="js/allinone.js"></script>
答案 0 :(得分:1)
检查脚本执行的顺序,如果它正常工作,可能你会更快地注意到它。还要检查Web控制台中的console.log()错误。顺便说一下,<script>
标签中的语言属性已被弃用了很长时间,不应该使用。在这些日子里,甚至不需要打字。此外,您有两个jQuery版本。
<script src="js/jquery.dataTables.min.js"></script>
答案 1 :(得分:0)
我无法关注dataTable应该来自哪里,但事实上,$ .fn.dataTable似乎都不可用或命令$('table')。DataTable();
也许你错过了一个提供此功能的脚本,但是如果你只是想隐藏行,你可以使用像min / max这样的东西(目前它的jsut min - 我没有完成它 - 只是测试了它):
// update circle position to be centered in the viewport
private void update() {
Bounds viewportBounds = scrollPane.getViewportBounds();
Bounds contentBounds = content.getBoundsInLocal();
double hRel = scrollPane.getHvalue() / scrollPane.getHmax();
double vRel = scrollPane.getVvalue() / scrollPane.getVmax();
double x = Math.max(0, (contentBounds.getWidth() - viewportBounds.getWidth()) * hRel) + viewportBounds.getWidth() / 2;
double y = Math.max(0, (contentBounds.getHeight() - viewportBounds.getHeight()) * vRel) + viewportBounds.getHeight() / 2;
Point2D localCoordinates = content.parentToLocal(x, y);
circle.setCenterX(localCoordinates.getX());
circle.setCenterY(localCoordinates.getY());
}
private Circle circle;
private Pane content;
private ScrollPane scrollPane;
@Override
public void start(Stage primaryStage) {
// create ui
circle = new Circle(10);
content = new Pane(circle);
content.setPrefSize(4000, 4000);
scrollPane = new ScrollPane(content);
Scene scene = new Scene(scrollPane, 400, 400);
// add listener to properties that may change
InvalidationListener l = o -> update();
content.layoutBoundsProperty().addListener(l);
scrollPane.viewportBoundsProperty().addListener(l);
scrollPane.hvalueProperty().addListener(l);
scrollPane.vvalueProperty().addListener(l);
scrollPane.hmaxProperty().addListener(l);
scrollPane.vmaxProperty().addListener(l);
scrollPane.hminProperty().addListener(l);
scrollPane.vminProperty().addListener(l);
primaryStage.setScene(scene);
primaryStage.show();
}