gpt4 book ai didi

java - Vaadin DateField 验证不显示验证错误

转载 作者:太空宇宙 更新时间:2023-11-04 11:04:22 26 4
gpt4 key购买 nike

您好,我正在使用 Vaadin 8,我正在尝试使用 Vaadins DateField 进行用户输入。

private DateField date = new DateField("Date of Birth");
...
binder.forField(date).asRequired("Some Warning").withValidator(new DateValidator()).bind(Person::getDateOfBirth, Person::setDateOfBirth);

DateValidator 检查此人是否年满 18 岁。

问题是,如果我使用集成在 DateField 中的 Datepicker,如果人员年龄小于 18 岁,则不会向用户显示验证错误。但是,当我输入日期并按 Enter 键或切换到另一个输入字段时,就会出现验证错误。

如何在通过日期选择器给出输入时显示验证错误?

最佳答案

显然Validator不管理ValueChange事件。您可以像这样自己做:

date.addValueChangeListener( event -> 
validate( event.getSource().getDefaultValidator(), event.getValue() ) );

以及一些示例 validate() 函数:

private void validate(Validator validator, LocalDateTime dateTime)
{
validator.apply(dateTime, ...);
}

关于java - Vaadin DateField 验证不显示验证错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46604363/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com