Vaadin TextBox:仅限数字和小数。
Vaadin TextBox: Numbers and decimal only.
如果提交的不是数字 and/or 小数位,我如何得到一个文本框给我一个错误?
您需要向文本字段添加验证器。
textField.addValidator(new Validator());
Vaadin 中没有检查值是否为数字的验证器,因此您需要创建一个自定义验证器:
private class MyValidator implements Validator {
@Override
public void validate(Object value)
throws InvalidValueException {
if (!(value instanceof Integer &&
(value instanceof Double)) {
throw new InvalidValueException("The value is not a number");
}
}
}
现在您可以将自定义验证器添加到您的字段中:
textField.addValidator(new MyValidator());
关于验证器的更多信息here。
private class MyValidator implements Validator {
@Override
public void validate(Object value) throws InvalidValueException {
try {
// new Integer(text);
new Double(value.toString());
} catch (NumberFormatException e) {
throw new InvalidValueException("The value is not a number");
}
}
}
如果提交的不是数字 and/or 小数位,我如何得到一个文本框给我一个错误?
您需要向文本字段添加验证器。
textField.addValidator(new Validator());
Vaadin 中没有检查值是否为数字的验证器,因此您需要创建一个自定义验证器:
private class MyValidator implements Validator {
@Override
public void validate(Object value)
throws InvalidValueException {
if (!(value instanceof Integer &&
(value instanceof Double)) {
throw new InvalidValueException("The value is not a number");
}
}
}
现在您可以将自定义验证器添加到您的字段中:
textField.addValidator(new MyValidator());
关于验证器的更多信息here。
private class MyValidator implements Validator {
@Override
public void validate(Object value) throws InvalidValueException {
try {
// new Integer(text);
new Double(value.toString());
} catch (NumberFormatException e) {
throw new InvalidValueException("The value is not a number");
}
}
}