2013-07-17 95 views
0

我試圖用「標籤,它」 jQuery UI的插件使用Spring MVC如何從控制器傳遞字符串收集來查看Spring MVC中

我控制器從DAL獲得可用標籤的列表,並將其添加到模型作爲屬性:

@RequestMapping(value = "/", method = RequestMethod.GET) 
    public String home(Model model){ 
     DAL dal = new DAL(); 
     model.addAttribute("FBAppId", ConfigurationManager.getInstance().getFBAppId()); 
     model.addAttribute("FBAppSecret", ConfigurationManager.getInstance().getFBSecret()); 
     model.addAttribute("tags", dal.getAllTags()); 
     return "home"; 
    } 

那我要考慮讀它,並把它作爲可用標籤的列表:

$(document).ready(function() { 

     $("#myTags").tagit({ 
      availableTags: '${tags}' 
     }); 
     $.ajaxSetup({ cache: true }); 
     $.getScript('//connect.facebook.net/en_UK/all.js', function(){ 
      FB.init({ 
      appId: '${FBAppId}', 
      channelUrl: '//yourapp.com/channel.html', 
     });  
     $('#loginbutton,#feedbutton').removeAttr('disabled'); 
     FB.getLoginStatus(updateStatusCallback); 

     FB.XFBML.parse(); 
     }); 

    }); 

但是什麼解釋是:「[標籤1,標籤2]」,而不是[」 tag1「,」tag2「]

有人知道如何解決這個問題嗎?

回答

0

${tags}調用toString()方法ArrayList。相反,你需要準備一個逗號分隔的字符串。你可以在控制器或視圖中做到這一點。

在控制器可以使用JSON映射器(例如傑克遜):

ObjectMapper mapper = new ObjectMapper(); // this better be a field 
String tags = mapper.writeValueAsString(getAllTags()); 
model.addAttribute("tags", tags); 
+0

謝謝,我會用GSON控制器上,之前我通過什麼建模。 –

相關問題