我想要一个带有日期选择器等的HTML<input type="date">
组件
我不能和威基特一起工作。我需要在没有Submit Form的情况下更改onChange((事件的模型值,并且我需要在model中java.util.Date对象的输入字段中显示初始值,这也不起作用。
我的代码java:
IModel<Date> model = new Model<Date>() {
private Date date = new Date();
public Date getObject() {
return date;
}
public void setObject(Date object) {
this.date = object;
}
};
DateTextField dateTo = new DateTextField("date", model);
dateTo.add(new OnChangeAjaxBehavior() {
@Override
protected void onUpdate(AjaxRequestTarget target) {
System.out.println(model.getObject()); <-- it is still null
}
});
add(dateTo);
HTML标记:
<input type="date" wicket:id="date" />
正如您所看到的,date被初始化为new date((,但在<input type="date">
中,我只能看到dd.mm.yyyy和setObject((方法。更改后,Date对象参数始终为null。
我做错了什么?谢谢你的回答。
HTML日期输入字段以2012-12-30
格式将数据发送回服务器。因此,您需要配置WicketDateTextField
来解析该格式:
import org.apache.wicket.extensions.markup.html.form.DateTextField;
new DateTextField("date", model, "yyyy-MM-dd");
另请参阅:https://stackoverflow.com/a/9519493/2511197