如何使用Zk在Datebox中禁用日期

时间:2013-04-02 06:56:36

标签: java zk

我在所选日期更改了颜色

您可以找到zk fiddle here

现在我要禁用一天。它不应该是可点击的。

2 个答案:

答案 0 :(得分:2)

目前启用/禁用日期依赖于其css类,您可以添加Datebox.getZclass()+' - disd'以在客户端禁用它,请参阅zkfiddle中的示例:

How to disable day in Datebox in Zk

这样您可以保存一些au请求,但仍需要通过java API为设置日期正确添加服务器端验证。

答案 1 :(得分:1)

datebox constraint基于SimpleDateConstraint,但不幸的是,它仅支持日期范围:您不能以这种方式将特定日期设为黑名单。

我认为这样做的正确方法不是让UI中的日期本身无法选择,而是忽略选择日期时的日期。结合这一点,就像你已经完成的那样在视觉上涂黑了日期,你就会得到你想要的效果。

要在Java端执行此 ,您可以实现自定义ClientConstraint。这实际上将在JavaScript中验证您的输入值,而不是正常的服务器端Constraint

当然,您可以深入了解Datebox JavaScript widget本身但我倾向于在可能的情况下回避这种方法。事实上,您会看到datebox.validate_函数通过整合上述ClientConstraint来弥补这一差距。