2013-02-19 24 views
1

我正在通過jQuery提交表單,並且我正在發送一個JSON對象以及提交。我這樣做,像這樣:如何在Grails控制器中解析JSON

console.log(jsonObject) 
    $.ajax({ 
     type: "POST", 
     url: "/myapp/mycontroller/save", 
     data: jsonObject, 
     success: '', 
     dataType: 'json' 
    }); 

console.log輸出看起來是這樣的:

Object {test: Object, test2: Object} 
test: Object 
    red: "off" 
    green: "off" 
    yellow: "off" 
test2: Object 
    red: "on" 
    green: "on" 
    yellow: "off" 

在我的控制器攢動,現在我只是有

def save() { 
    println params 
} 

它打印此:

[test2 [red]:on,test [green]:off,t EST2 [黃色]:上,TEST2 [紅色]:關, 測試[綠色]:關閉,測試[黃色]:關,動作:保存, 控制器:myController的]

問題

我如何可以訪問jsonObject和解析它我save()

+0

嘗試JSON.parse:http://mike.bailey.net.au/2011/02/json-with-ruby-and-rails/ – 2013-02-19 17:11:44

+0

這是在grails中。加上我不知道要放在這裏'JSON.parse(...)' – Anthony 2013-02-19 17:19:32

回答

2

您可以訪問它,就像對象:

params.test.red(即「關」)

+0

我想能夠遍歷所有的鍵 – Anthony 2013-02-19 17:35:06

+0

這是一張地圖,所以你可以遍歷它與「每個」封閉,例如,或用「for」循環:for(e in params){/ *用e * /} – rbobin 2013-02-19 17:42:11