Validation 如何验证SmartGWT中的数字文本框?

Validation 如何验证SmartGWT中的数字文本框?,validation,handler,smartgwt,Validation,Handler,Smartgwt,Textbox应该只接受数字,我想使用除ChangedHandler/ChangedHandler/KeyPressHandler/code> 我的验证课 public class UnderLyingIDChangeHandler implements ChangedHandler { private final CreditRiskView creditRiskView; public UnderLyingIDChangeHandler(CreditRiskView cre

Textbox应该只接受数字,我想使用除
ChangedHandler/ChangedHandler/KeyPressHandler/code>

我的验证课

public class UnderLyingIDChangeHandler implements ChangedHandler {
    private final CreditRiskView creditRiskView;

    public UnderLyingIDChangeHandler(CreditRiskView creditRiskView) {
        this.creditRiskView = creditRiskView;
    }
    @Override
    public void onChanged(ChangedEvent event) {
        String value= (String) event.getItem().getValue();
        if(!value.matches("[0-9]*")){
            creditRiskView.invalidUnderlyingID();
        }
}
这是我需要显示验证的主要类

public class CreditRiskView{
private TextItem underlyingIDField;
public void addunderlyingIDInputChangeHadler(ChangedHandler changedHandler) {

    //logic is that this method will invoked in the UnderLyingIDChangeHandler class

     underlyingIDField.addChangedHandler(changedHandler);
    }
 public void invalidUnderlyingID(){

    // I don't know how to set an error message as underlyingIDField.clearValue() 
       method is not doing well.

    }   
}

如何限制用户可以输入的字符? 请参见此示例:

如何限制用户可以输入的字符? 请参见此示例:

如果文本框是动态表单中的文本项,则其工作原理如下:

IsIntegerValidator isIntegerValidator = new IsIntegerValidator();
isIntegerValidator.setErrorMessage("error message");
textItem.setValidators(isIntegerValidator);

要在调用表单.validate()时显示这样的错误,需要在表单中设置setShowInlineErrors(true)。

如果文本框是动态表单中的文本项,则其工作原理如下:

IsIntegerValidator isIntegerValidator = new IsIntegerValidator();
isIntegerValidator.setErrorMessage("error message");
textItem.setValidators(isIntegerValidator);

要在调用form.validate()时显示这样的错误,您需要在表单中设置setShowInlineErrors(true)。

但我的用例是,用户可以输入任何值并需要验证该示例,如[link](),但我的用例是,用户可以输入任何值并需要验证该示例,如[link]()