2013-02-11 83 views
0

我們在後端使用Spring 3 MVC。使用Javascript數組填充命令數組/列表提交?

我們有一個頁面使用谷歌地圖api在地圖上創建點數組。這個數組是一個Javascript數組(google api標記對象,但我們可以在任何時候獲取LatLng,然後獲取它們的實際長和緯值)。這實際上就在這一點上,焦點集中在一個javascript數組上。

該頁面還具有其他各種表單元素(名稱,點等的描述等)的表單。

我們有一個表單支持Command對象,它明顯具有名稱,描述等變量,我們還可以爲點或兩個數組或列表添加一個數組/列表,如果它更容易將lat和long分開,稍後通過索引匹配它們。

我們希望使用javascript實際提交表單,但在實際提交之前,我們希望將該數組(或其值)存入Command對象。

我們該怎麼做?

我們已經看到了各種類似但不太相當的問題,建議使用JSON.stringify(pointsArray),但這看起來並不完全符合我的想法。

回答

0

因此,如果您使用javascript提交表單,並且您在javascript中提供了所有的座標,那麼在提交表單之前,只需以任何您想要的格式設置輸入字段值(命令對象的屬性)即可。假設你選擇了這種格式:<input name="command.coords" value="[{lat:5, long:6}, {lat:7, long:8}]"然後在服務器端(對於spring)你註冊一個自定義的PropertyEditor(Converter)來將你的輸入格式轉換成你想要的服務器端格式(可能你會將json轉換爲List)

它與Spring中使用的CustomDateEditor類似。在UI中,你可能有不同的日期格式,但你註冊DateEditor告訴春天如何將UI(String)格式轉換爲java(Date對象)格式。