我正在尝试使用日期框制作过滤器。 如果未插入日期,则不会将其添加到查询中。 插入日期后,他将从此日期算起。
这一切都非常好,我唯一的愚蠢小问题是我有一个清除日期的按钮。 或者我使用@command(...)并将我的queryObject.date设置为null,将更新我的搜索正确但是日期仍然在日期框中。 (我不想在日期框中使用自动装配)
或者我执行searchBeginDate.setText(null)并且文本消失但是我的列表没有刷新。
我必须做什么选择呢?
编辑:项目的示例代码。
<datebox id="searchBeginDate" value="@bind(vm.loggingVmQueryObject.beginDate)" onOK="@command('filter')" />
<button onClick="searchBeginDate.setText(null);vm.loggingVmQueryObject.setBeginDate(null)" image="/img/delete.PNG" />
这会对日期框进行删除,但列表不会刷新。
<datebox id="searchBeginDate" value="@bind(vm.loggingVmQueryObject.beginDate)" onOK="@command('filter')" />
<button onClick="@command('clearBeginDate')" image="/img/delete.PNG" />
这样刷新列表是正确的,在代码中loggingVmQueryObject.beginDate设置为null但日期框仍然显示最后设置的日期。
Greetz chill。
答案 0 :(得分:2)
你告诉我代码,我展示了一个解决方案;)
在zul
<datebox id="searchBeginDate" value="@bind(vm.loggingVmQueryObject.beginDate)" onOK="@command('filter')" />
<button onClick="@command('clearBeginDate', date = searchBeginDate)" image="/img/delete.PNG" />
在java中
public void clearBeginDate(@BindingParam("date")Datebox date){
//your other code here
date.setText(null);
}