输入字段更改后的小窗口数据表过滤
Wicket datatable filtering after input field change
在Wicket应用程序中,我有一个带有扩展名SortableDataProvider的DefaultDataTable和一个可点击的列(扩展名AbstractColumn)。
数据表附带一个搜索字段和按钮,因此用户可以过滤表(比较搜索词和表内容)。
然而,我更喜欢另一种方法。如果用户不必单击按钮来匹配结果,而是在向搜索字段插入或删除每个字符后更新表(立即过滤,而不是在按下按钮之后),那就更好了。此外,与搜索词匹配的记录部分应该加下划线或使用不同的字体颜色。
我知道这样的东西是可能的Javascript,但我不知道如何将Javascript附加到一个数据表。我怎样才能做到这一点呢?或者是否有更好/替代的方法来实现我的愿望?
任何帮助都将非常感激!
您可以使用AjaxFormComponentUpdatingBehavior
向表单组件添加ajax行为。ajax的调用依赖于构造函数中指定的js事件,在本例中为"onkeyup"。然后,您的目标组件,你什么ajax重新渲染,为wicket 4,5 target.addComponent(datatable);
为wicket 6x target.add(datatable);
。但是请注意,数据表将其OutputMarkupId设置为true target.addComponent(datatable);
,这对于wicket ajax所针对的任何组件都是必需的。
datatable.setOutputMarkupId(true);
field.add(new AjaxFormComponentUpdatingBehavior("onkeyup") {
@Override
protected void onUpdate(AjaxRequestTarget target) {
target.addComponent(datatable);
}
});
您可能还需要节流,希望这有助于!
相关文章:
- 用程序搜索JQuery数据表中的文本
- 具有rowGrouping的数据表无法隐藏列
- 使用谷歌应用程序脚本将服务器端数据表返回到客户端
- 将单击事件添加到数据表
- 使用带有参数的数据表sAjaxSource
- 对角度数据表中括号内的数字进行排序
- 动态构建一个数据表与scriplets
- jquery数据表的自定义ko绑定
- 预览数据表单
- 如何在数据表中设置从Ajax响应选中的复选框
- DT数据表背景颜色为黑色,但仍有悬停和选择颜色
- 数据表-隐藏/显示列
- 对损坏的子行进行排序的数据表
- 数据表排序但对行进行分组
- 精彩弹出窗口在数据表的第二页上不起作用
- 在弹出窗口中显示带有Ajax数据源的jQuery数据表
- 数据表和剑道窗口UI
- Jquery数据表,表不可用后模态窗口
- 输入字段更改后的小窗口数据表过滤
- 模式窗口不能为分页数据表工作