我有一个DateTimeField
尝试根据用户的喜好允许2种格式的格式:MM/dd/yy
或dd/MM/yy
。当用户单击DatePicker
并选择一个日期时,我可以DateTextField
用正确的格式显示日期。但是,当我尝试提交表单时,会收到"'date' is not a valid Date"
警报,这是的默认警报DateTimeField
。有没有一种我可以设置的方法,不仅可以设置日期模式,还可以设置验证模式吗?我已经尝试实现自己的功能IValidator
,IConverter
正如其他帖子所提到的那样,但是我没有运气。
这是我如何更改选择日期在的显示方式的代码DateTextField
:
DateTimeField fromDate = new DateTimeField("fromDate") {
private static final long serialVersionUID = 1L;
@Override
protected DatePicker newDatePicker() {
DatePicker datePicker = new DatePicker(){
private static final long serialVersionUID = 1L;
@Override
protected String getDatePattern() {
return ((String) getSession()
.getAttribute("dateFormat")).replace("yyyy", "yy");
}
};
return datePicker;
}
您应该将dateTextField与自定义转换器一起使用:
new DateTimeField(..) {
protected DateTextField newDateTextField(String id, PropertyModel<Date> dateFieldModel)
{
return new DateTextField(id, model, yourCustomConverter);
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句