答案 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
来弥补这一差距。