【问题标题】:Set Customizing validation message in Vaadin DateField在 Vaadin DateField 中设置自定义验证消息
【发布时间】:2016-09-01 05:52:20
【问题描述】:

我想更改 vaadin 日期字段上的自定义验证消息。

我的示例图片附在此处...

这里我想从“Date format not recognized”改成“Please Enter dd/MM/yyyy date format

【问题讨论】:

  • 你能发布你的代码吗?
  • 您是否尝试过使用可用的方法:medateField.setParseErrorMessage("parseError"); dateField.setConversionError("conversionError");如果这不起作用,请尝试使用 Label 并添加带有验证的模糊监听器

标签: validation vaadin7 datefield


【解决方案1】:

你可以看看这个链接 https://vaadin.com/docs/-/part/framework/components/components-datefield.html

自定义错误消息

除了自定义解析之外,覆盖不可解析输入的处理程序方法对于错误消息的国际化和其他自定义很有用。您还可以将它用于报告错误的另一种方式,如下例所示:

// Create a date field with a custom error message for invalid format
PopupDateField date = new PopupDateField("My Date") {
    @Override
    protected Date handleUnparsableDateString(String dateString)
    throws Property.ConversionException {
        // Have a notification for the error
        Notification.show(
                "Your date needs two slashes",
                Notification.TYPE_WARNING_MESSAGE);

        // A failure must always also throw an exception
        throw new Property.ConversionException("Bad date");
    }
};

如果输入无效,你应该总是抛出异常;返回 null 值会使输入字段为空,这可能是不希望的。

【讨论】:

  • 感谢您的回答。它显示在通知上,但我想在内部可编辑的网格上显示消息
【解决方案2】:

你可以使用方法

dateField.setParseErrorMessage("parseError"); 

您还可以使用 setDateOutOfRangeMessage() 覆盖另一条消息

【讨论】:

    猜你喜欢
    • 2014-09-27
    • 2018-09-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-12-12
    相关资源
    最近更新 更多