[英]How to convert Datepicker-date to Java.util.Date?
錯誤信息
org.codehaus.jackson.map.JsonMappingException:無法根據字符串值'02 / 23/2013'構造java.util.Date的實例:不是有效的表示形式(錯誤:無法解析日期“ 02/23/2013”:與任何標准格式(“ yyyy-MM-dd'T'HH:mm:ss.SSSZ”,“ yyyy-MM-dd'T'HH:mm:ss.SSS'Z'”,“ EEE, dd MMM yyyy HH:mm:ss zzz“,” yyyy-MM-dd“))
Java對象-實體
@Column(name = "event_date")
@Temporal(TemporalType.TIMESTAMP)
private Date eventDate;
Java腳本
$(function() {
$("#datepicker").datepicker();
});
function formToJSON() {
return JSON.stringify({
"eventDate": $('#datepicker').val()
});
}
的HTML
<input type="text" id="datepicker" name="date" placeholder="Date" />
您可以這樣做:
$(function() {
$("#datepicker").datepicker({
dateFormat: "yy-mm-dd"
});
});
datepicker
包含日期格式化工具$.datepicker.formatDate
API參考: http : //docs.jquery.com/UI/Datepicker/$.datepicker.formatDate
嘗試這個:
function formToJSON() {
var d= $('#datepicker').datepicker('getDate')
return JSON.stringify({
"eventDate": $.datepicker.formatDate('yy-mm-dd', d)
});
}
可能有更好的解決方案,但是由於這是我經常遇到的問題,並且通常找不到易於使用的工具,因此我最終為此編寫了自己的函數:
function dateFormat(date) {
function two(v) { return v < 10 ? "0" + v : "" + v; }
function four(v) { return v < 10 ? "000" + v : v < 100 ? "00" + v : v < 1000 ? "0" + v : "" + v; }
var y = four(date.getFullYear());
var m = two(date.getMonth()+1);
var d = two(date.getDate());
return y + "-" + m + "-" + d;
};
function datetimeFormat(date) {
function two(v) { return v < 10 ? "0" + v : "" + v; }
function three(v) { return v < 10 ? "00" + v : v < 100 ? "0" + v : "" + v; }
function four(v) { return v < 10 ? "000" + v : v < 100 ? "00" + v : v < 1000 ? "0" + v : "" + v; }
var y = four(date.getUTCFullYear());
var m = two(date.getUTCMonth()+1);
var d = two(date.getUTCDate());
var h = two(date.getUTCHours());
var mm = two(date.getUTCMinutes());
var s = two(date.getUTCSeconds());
var ms = three(date.getUTCMilliseconds());
return y + "-" + m + "-" + d + "T" + h + ":" + mm + ":" + s + "." + ms;
};
第一個是您在特定情況下需要的,因為您只處理日期(而不是時間)。
return JSON.stringify({
"eventDate": dateFormat($('#datepicker').datepicker('getDate'))
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.