我继承了用旧zul编写的旧版网站,并且必须为生日日期选择器添加新的datebox
组件。
已添加了一个约束,以接受给定日期之前的日期,但是由于日期选择器上默认显示的日期是今天,所以从一开始就会触发错误警报框。
我不想使用变通方法,但是请大家注意,这似乎是我在zk现实中寻找的最重要的功能:
我确实尝试了该替代方法(在论坛发帖之后,因为该年份是默认年份),但是该替代方法对我不起作用。它确实执行
this.setValue(initialDate);
而且我看到该值已设置到日期框的_pop / _value和_pop / _end节点中,但在日期选择器框上看不到任何区别,今天仍被预选为灰色,因此没有效果。 尽管如此,当I try it in a fiddle with version 6.5.8.1(存在的最旧的引擎)运行时,它确实可以运行,但在v5.0.11中不能在本地运行。
此版本的buglist中没有提及日期框。试图研究可能会引起干扰的错误,但事实证明,这只是我浪费时间的另一集。
在5.0.11沙箱中尝试过,它不适用于该版本。我如何使用它的结构在链接的提琴手中被模仿。是否提示适用于此版本的解决方法?
答案 0 :(得分:0)
ZK 5.0.11当前在较旧的一侧,因此它可能不接受与较新版本完全相同的替代。如果我对问题的理解正确,那么可以归结为其中一个
1-在渲染Datebox之前设置一个值,以在日历中打开“初始日期”。
我想说这是简单的方法,因为您可以在页面渲染期间使用合成或数据绑定来设置日期框的值。这是一个使用数据绑定和zscripts的小示例,但是使用setValue()的作曲家应该应用相同的逻辑。您提到过,这对于5.0.11本地版本不起作用。您可以共享为此使用的代码吗? Sample code here in fiddle我可以在本地5.0.11上运行它,它设置了打开弹出窗口之前的日期。
或
2-设置一个初始日期(不会影响所选的值),但它将成为打开的日历的目标。
这不是datebox的默认ZK 5行为。如果需要这种效果,则需要使用替代脚本对其进行自定义。在ZK 5中可以想到的最简单的方法是使用datebox弹出窗口的open事件,这是一个看起来像的示例(该示例在单个页面中的script标记中打包,将实际使用全局js文件部署)example here