如何从JSON读取地图数据

时间:2011-12-26 12:23:38

标签: ajax json jquery spring-3

我正在使用Spring 3和JQuery。

我想从我的Spring Controller

返回Map {包含elementID及其值}

并使用数据更新视图。

控制器代码

    @RequestMapping(value="/hpcCalResult")
public ResponseEntity<Map<String, String>>  calculateHeathPlanCost(HttpServletRequest request) {
    Map<String,String> requestMap = getMapFromRequest(request);
    boolean isError = false;
    Map<String,String> responseMap =  new HashMap<String, String>();
    try{
        responseMap = this.healthPlanService.getResponseMapAfterHPCostCalc(requestMap);
    }catch(HCException e){
        isError = true;
        responseMap.put("error", Springi18nUtils.getMessage(e.getMessageCode().getName(), null));
    }
    HttpHeaders headers = new HttpHeaders();
    headers.setContentType(MediaType.APPLICATION_JSON);
    if(isError){
        return new ResponseEntity<Map<String, String>>(responseMap, headers, HttpStatus.INTERNAL_SERVER_ERROR);
    }else
        return new ResponseEntity<Map<String, String>>(responseMap, headers, HttpStatus.OK);
}

现在我想在JSP文件ajax请求中使用此响应Map来更新ui。

我的JQUERY代码是代码:

 $("#Continue").click(function () {
            var form = $("#calculator");
            var data = form.serialize();
            $.post(form.attr("action"), data ,
                    function( data ) {
                             <<< dont know how to read the data as so that i can get key values which i will use to update the form fields . >>>

                        });
                    }   
            );
        });

请帮助我。 感谢。

1 个答案:

答案 0 :(得分:0)

尝试理解代码中的细节有点沉重......因此,我不确定我的答案会对您有所帮助。 但是,您是否尝试在javascript中使用eval()函数?以这种方式解码json非常容易。 像这样的东西:

var themap = new Object();
themap = eval( jsonedInstances );