文本框仅允许以gwt为单位的十进制值和数字

时间:2013-09-18 07:12:21

标签: gwt

我在GWT中使用验证。我有文本框。在该字段中,它仅接受整数和十进制值,而不是特殊字符。我使用正则表达式模式“[0-9 *]”但它不接受十进制值。你能给我一个解决方案

吗?

提前致谢。

3 个答案:

答案 0 :(得分:2)

您必须子类化textBox并处理子类中的转换。即创建一些“BigDecimalBox”。 然后在要验证的对象中使用它。

private static final String MIN_VALUE = "0.00";
private static final String MAX_VALUE = "99999.99";
@DecimalMax(value = MAX_VALUE)
@DecimalMin(value = MIN_VALUE)
private BigDecimal mortgage;

避免对小数值使用double。如果您是企业开发人员,那就是known Java trap和禁止 - 否定!默认情况下,IMO GWT应提供BigDecimalBox。

答案 1 :(得分:1)

GWT具有输入编号的树特定TextBox: IntegerBoxLongBoxDoubleBox

Theses文本框将验证输入文本的格式并返回Integer,Long或Double Value。

答案 2 :(得分:0)

我知道这已经过时了,但我有同样的问题。

我在com.github.gwtbootstrap.client.ui包中找到了GWT Bootstrap的BigDecimalBox。它提供了BigDecimalRenderer(用于显示)和BigDecimalParser(用于解析)。

https://gwtbootstrap.github.io/