欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

wicket基础应用(1)--使用wicket对表单中的数据进行验证

程序员文章站 2023-12-21 18:47:22
...
该文可以转载,但转载必须注明作者,出处:
作者:lhx1026

出处:[url]http://lhx1026.iteye.com/[/url]


上个月连续加班了一个月,项目是用wicket+spring+ibatis做的。做这个项目之前,对wicket的了解也只是一点点而已。不过做完这个项目之后,终于对wicket的应用有些了解。趁现在手头上没什么重要的事情,就记录下笔记。

[b]wicket基础应用(1)--使用wicket对表单中的数据进行验证[/b]
举个例子:
1、有一个Java文件SysChargeEdit.java以及SysChargeEdit.html,里面有一个表单需要验证
html代码如下:
<span style="color: red;" wicket:id="feedBack">错误提示信息</span><!--注意:这里的是用来显示错误信息的-->
<form wicket:id="form">
<table border="0" cellspacing="2" cellpadding="1">

<tr>
<td align="right">收费代码:</td>
<td><input type="text" wicket:id="txtChargeCode"><font
color="red">*</font></td>
</tr>
<tr>
<td align="right">收费说明:</td>
<td><input type="text" " wicket:id="txtChargeHint"></td>
</tr>
</table>
</form>


java代码:

public SysChargeEdit() {
this.add(new FeedbackPanel("feedBack"));//用来显示错误信息
Form form = new Form("form") {
@Override
protected void onSubmit() {
// TODO Auto-generated method stub
}
};
this.add(form);
final TextField txtChargeCode = new TextField("txtChargeCode", chargeCodeModel);
txtChargeCode.add(StringValidator.lengthBetween(0, 20));//验证txtChargeCode控件的长度大于0,小于20
txtChargeCode.setRequired(true);//验证txtChargeCode控件不能为空
form.add(txtChargeCode);
TextField txtChargeHint = new TextField("txtChargeHint", chargeHintModel);
form.add(txtChargeHint);
}


2、在这里需要在这个SysChargeEdit类的同一目录下放置一个properties文件:SysChargeEdit.properties(注意:properties文件一定要同Java文件同名)
文件内容如下:

form.txtChargeCode.Required=收费代码不能为空
form.txtChargeCode.StringValidator.range=收费代码的长度能超过20个字符


在这里要注意的是:
form.txtChargeCode这个是有层次关系的。form和txtChargeCode是html页面的wicket:id,form是txtChargeCode父控件

在这里在eclipse环境下需要下载一个编辑properties文件的插件,插件地址:http://propedit.sourceforge.jp/eclipse/updates/ ,选择properties editor安装
需要经过这个插件编辑过的properties文件在运行的时候错误信息才能显示正常

3、相关的验证控件的资料

见下图

[img]/upload/attachment/135875/30e06b66-db9e-32d9-a9c1-bd412c39a52e.jpg[/img]

[img]/upload/attachment/135877/2a756e4f-280e-3fa3-8be4-47dc4ae89d11.jpg[/img]

[img]/upload/attachment/135879/85c29de7-d1b3-3795-bce7-7b1fd66fb4c4.jpg[/img]

上一篇:

下一篇: