我有一个使用自定义日期和时间选择器脚本的文本输入。
<div class="input-group date datetime" data-start-view="4" data-date-format="dd MM yyyy" data-min-view="2" data-link-field="dtp_input1">
<input name="dateOfBirth" class="form-control" size="16" type="text" value="${userInstance?.dateOfBirth}"/>
<span class="input-group-addon btn btn-primary"><span class="glyphicon glyphicon-th"></span></span>
</div>
它给了我这个错误
Property org.springframework.context.support.DefaultMessageSourceResolvable: codes [rms.User.dateOfBirth,dateOfBirth]; arguments []; default message [dateOfBirth] must be a valid Date
我不知道如何解决这个问题。使用grails dateTime picker标签似乎可以工作,但它的丑陋
答案 0 :(得分:1)
唯一的方法是使用SimpleDateFormat
。我经常将它用于带有JS日历的表单:
class YourController {
static SimpleDateFormat sdf = new SimpleDateFormat( 'dd.MM.yyyy' )
def index(){
Date dateOfBirth
try{
if( params.dateOfBirth ) dateOfBirth = sdf.parse( params.dateOfBirth )
}catch( Exception ignoreMe ){}
// do something useful
}
更新:
当然,您必须使用适当的日期格式。我在示例中dd.MM.yyyy
给出的那个对应08.02.2014
。对于像February 08 2014
这样的字符串,您需要MMM dd yyyy
之类的字符串。
有关详细信息,请参阅http://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html