在zk中为多个intbox使用自定义消息

时间:2011-09-17 17:23:48

标签: customvalidator zk

我在同一窗口父级下有几个intbox。我为一个intbox创建了一个带有自定义消息的自定义验证器。为了显示错误消息,我使用一个标签,我给出一个唯一的ID。现在我需要对所有的intbox使用相同的约束。在自定义错误消息中,我有一个唯一的标签ID用于显示错误,那么我如何对所有的intbox使用相同的消息? 以下是我的自定义验证器的代码,其中包含自定义消息:

<zscipt> <![CDATA[ class MyConst implements Constraint, CustomConstraint { //Constraint// public void validate(Component comp, Object value) { if (value == null || ((Integer)value).intValue() >8) throw new WrongValueException(comp, "values only b/w 0 and 8"); } //CustomConstraint// public void showCustomError(Component comp, WrongValueException ex) { errmsg.setValue(ex != null ? ex.getMessage(): ""); } } Constraint ctt = new MyConst(); ]]>

感谢。

1 个答案:

答案 0 :(得分:0)

有几种解决方案。首先,您可以增强MyConst的构造函数以接受Label。

其次,您可以使用名称模式。例如,如果标签的ID始终是文本框ID的连接,例如“错误”。然后,您可以使用comp.getFellow(comp.getId()+“Error”)来检索标签。

此外,您可以使用the server-side component selector来获取标签。