2016-01-10 29 views
0

我有Thymeleaf代碼(此代碼需要我補充參數jQuery的 - 的DatePicker):如何使用Thymeleaf將org.joda.time.LocalDateTime轉換或反序列化爲毫秒?

<table th:attr="data-availible-dates=${defoultSetting.avalibleDates}"> 

現在頁面看起來像:

data-availible-dates="[2014-01-09T00:00:00.000, 2014-01-14T00:00:00.000, 2014-01-10T00:00:00.000, 2014-01-23T00:00:00.000, 2014-01-15T00:00:00.000, 2014-01-06T00:00:00.000, 2014-01-24T00:00:00.000, 2014-01-20T00:00:00.000, 2014-01-16T00:00:00.000, 2014-01-21T00:00:00.000, 2014-01-08T00:00:00.000, 2014-01-22T00:00:00.000, 2014-01-17T00:00:00.000, 2014-01-13T00:00:00.000]" 

,但我不會將轉換爲毫秒這樣的例子:

data-availible-dates="[1451170800000, 1452380400000, 1452466800000, 1452553200000]" 

我可以使用Thymeleaf做出類似JsonDeserializer東西..這將數據轉換爲毫秒之前建立的頁面?

結果:

我決定送毫秒的列表,第二我使用的情況下,現在下面的代碼時,需要從服務器端變量添加到JS:

<script type="text/javascript" th:inline="javascript"> 
/*<![CDATA[*/ 
    var avalibleDates = /*[[${defoultSetting.avalibleDates}]]*/; 
/*]]>*/ 
</script> 

回答

1

嗯,看起來並不像Thymeleaf那樣有內置功能。 但是你可以編寫簡單的JavaScript函數來DateTime轉換爲以毫秒爲單位,使用以下功能:

var myDate = new Date("2012-02-10T13:19:11+0000"); 
var result = myDate.getTime(); 

在另一方面,如果你需要在毫秒的時間,你爲什麼不把它轉換在Java端併發送處理後的最終變量集(包含以毫秒爲單位的時間)給Thymeleaf?

+0

你好,「爲什麼你不會在Java端進行轉換」 - 因爲我的變量類型爲org.joda.time.LocalDateTime,並且如果我將它們保留在毫秒內,並且想要操作 - 它將會冗餘 –

+1

但建議使用js進行轉換有一定意義,我會稍後再嘗試,如果它會有結果 - 我會讓大拇指 –

+0

我更新後... –