Mam textField Wicket, który zawiera wartość całkowitąJak sprawdzić wartości zerowe w polu tekstowym wicket?
currentValueTextField = new TextField<IntParameter>("valueText", new PropertyModel<IntParameter>(model, "value"));
Ja załączając niestandardowy walidator do tego, co następuje
currentValueTextField.add(new IntegerValidator());
Klasa walidator jest
class IntegerValidator extends AbstractValidator<IntParameter> {
private static final long serialVersionUID = 5899174401360212883L;
public IntegerValidator() {
}
@Override
public void onValidate(IValidatable<IntParameter> validatable) {
ValidationError error = new ValidationError();
if (model.getValue() == null) {
AttributeAppender redOutline = new AttributeAppender("style", new Model<String>("border-style:solid; border-color:#f86b5c; border-width: 3px"), ";");
currentValueTextField.add(redOutline);
currentValueTextField.getParent().getParent().add(redOutline);
validatable.error(error);
}
}
}
jednak jeśli nic nie wpisuję w polu tekstowym, moja metoda onValidate()
nie jest wywoływana.
Jaki jest zalecany sposób sprawdzenia wartości pustych w tym przypadku? Chciałbym również sprawdzić zakres dla wprowadzonej wartości.
nie wiem o Wicket ale na innych forach internetowych, które znam walidacji nie jest wymagana pusty pola tekstowe. Niektóre z nich udostępniają dodatkowe znaczniki dla swoich znaczników, aby włączyć/wyłączyć wymagane sprawdzenia, podczas gdy w innych może być konieczne sprawdzenie po umieszczeniu wartości formularza w modelu (lub później sprawdzeniu modelu). – Thomas