2011-11-18 16 views
1

我有一个JSONP服务,我想要返回几个HTML片段以及其他一些信息。我想用HTML模板系统生成这些片段。为JSONP响应生成多个HTML片段(Spring MVC)

的反应可能是这个样子:

parseResponse({ 
    "id": "a684a87ea3sd8", 
    "status": "OK", 
    "some_list": "<ul><li>item one</li><li>item two</li></ul>", 
    "summary": "<p>You have two items</p><p>You're so cool</p>", 
    "another_list": "<ul><li>uno</li><li>dos</li><li>microsoft</li></ul>", 
    "more_non_html_info": "And he stepped on the ball" 
}); 

所以使用Spring MVC 3,在我的控制,我想能够物体/背景送入我的模板系统,并得到一个HTML字符串背部。每次调用控制器时,我都要这么做。

我找不到使用JSP进行此操作的方法。什么是最直接的方式来完成这一点?

回答

0

在你的控制器,你应该创建一个功能构建JSON字符串

@Controller 
public class MyController { 
    .... 
    public String myfunction(ModelMap model) { 
     String jsonReply = "{" 
       +"'id':'blabla'," 
       +"'status':'blabla'," 
       .... 
       +"}"; 


     model.put('json',jsonReply); 
     return 'myview'; 
} 

然后创建一个名为“myview.jsp”和它只是在你的模型显示JSON对象视图

$ { json}

这不是最好的办法,但你可以从这里开始。

+0

感谢您的回复,但我不明白我如何使用这种方法从JSP中生成和添加HTML片段。 –

+0

给你一个ajax调用Controller来生成json字符串。然后在JavaScript中实现parseResponse函数以在调用JSP中添加片段。 – Thomas