2
$(document).ready(function(){
    $('#id1').click(function(){

        $.ajax({
            type:"GET",
            url:" ggs.erm.servlet.setup5.Page",
            success:function(response){
                var obj = JSON.parse(response);
                alert(obj);
            }
        });
    });
});

サーバーから受け取ったJSONオブジェクトの解析で問題が発生しています。

Connection con = null;
JSONObject json = new JSONObject();
JSONArray jarray = new JSONArray();
try{
    con =ConnectionPool.getConnection();
    String sql = "select country from country_name";
    Statement stmt = con.createStatement();
    ResultSet rs =  stmt.executeQuery(sql);
    while(rs.next())
    {
        jarray.put(rs.getString(1));    
    }
    json.put("country", jarray);
}
catch(Exception e){e.printStackTrace();}
finally{
    try {
        con.close();
    } catch (SQLException e) {
    e.printStackTrace();}
    }
    response.setContentType("application/json");
    try {
        response.getWriter().write(json.toString());
    } catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
    }
}

これはjsonを生成するためのコードです。
問題は、クライアント側で取得したJSONオブジェクトを解析する方法です。

4

1 に答える 1

1

alert()デバッグには使用しないでください。それはあなたにtoString()値を与えるだけです、それは[object Object]です。

代わりに、オブジェクトをコンソールに記録します。

console.log(response);

// or

var obj = JSON.parse(response);
console.log(obj);

ブラウザで開発者ツールを開いて、オブジェクトのコンテンツを表示します。

于 2013-01-30T06:46:40.030 に答える