本帖最后由 chen_bq 于 2012-03-12 10:53:43 编辑

解决方案 »

  1.   

    當然可以自己手動去拆的,不過有第三方的json包,new JSONObject(String arg);
    然后就可以操作了!
      

  2.   

    json对象并没有在js中赋到一个变量参数,然后传到java后台中!json直接在request域中
      

  3.   

    把JSON对象数据提交到后台时只是一个字符串参数,在后台需要获取该参数后用JSON包解析成JSON对象,然后你就可以访问里面的数据。JSON包可从www.json.org下载java包。使用方式如下,主要得看你JSON对象传到后台的参数名称是什么。String jsonString= request.getParameter("json");
    System.out.println(jsonString);
    JSONObject jsonObj=new JSONObject(jsonString);
    System.out.println(jsonObj.getJSONObject("Ielts").getString("IeltsTotalScore"));
      

  4.   

    非要这样写吗?我不借助json参数呢?
      

  5.   

    我不知道你用的是什么框架,它提交到后台时是怎么处理的。
    我用Extjs,如果是一个Object,那还得将它转换为字符串:var json ={
        "cet4":$("#cet4").val(),
        "cet6":$("#cet6").val(),
        "Ielts":
            Ext.encode(
            {  "IeltsTotalScore": $("#IeltsTotalScore").val(),
                "IeltsListening": $("#IeltsListening").val(), 
                 "IeltsSpeaking":$("#IeltsSpeaking").val(),
               "IeltsReading": $("#IeltsWriting").val(),
               "IeltsWriting":$("#IeltsWriting").val()
           }
           )
        }
    在后台就可以获取到JSON字符串,再转换为JSON对象。
    String jsonString= request.getParameter("Ielts");
    System.out.println(jsonString);
    JSONObject jsonObj=new JSONObject(jsonString);
    System.out.println(jsonObj.getString("IeltsTotalScore"));