1
<!DOCTYPE html>
<html>
    <head>
    <meta http-equiv="Access-Control-Allow-Origin" content="*">
    <script src="jquery.js"></script>
    <script type="text/javascript">

        var index = "index";
        var park = "park";

        $(document).ready(function() {
            $("button").click(function() {
                url="http://openAPI.seoul.go.kr:8088/personalKeyvalue/json/SearchParkInfoService/1/3"
                $.getJSON(url,function(result) {
                    JSONObject jsonRoot = new JSONObject(result);
                    JSONObject jsonService = jsonRoot.getJSONObject("SearchParkInfoService");
                    int totalCount = jsonService.getInt("list_total_count");
                    JSONArray json = jsonService.getJSONArray("row");
                    for (var i = 0; i < totalCount; i++) {
                        document.write(json+"<br>");
                    }
                });
            });
        });

    </script>
    </head>
    <body>
        <h2>Retrieve data from JSON with AJAX!</h2>
        <button>GetAJAX data</button>
    </body>
</html>

我有Uncaught SyntaxError: Unexpected identifier谷歌浏览器。

错误发生在第 14 行,即:

JSONObject jsonRoot = new JSONObject(result);

你能提供任何解决问题的建议吗?

4

2 回答 2

2

你不要在 JavaScript 中定义这样的变量:

JSONObject jsonRoot = new JSONObject(result);

因为它不是强类型语言。你可以这样定义这个变量:

var jsonRoot = new JSONObject(result);
于 2012-11-20T13:17:03.113 回答
0

无论您从哪里获得该代码,这都是错误的。它不是有效的 JavaScript。

在 javascript 中声明变量的唯一方法是通过关键字var.

正确的是(在您发表评论后编辑):

var jsonObject = JSON.parse(result);
// now you can work with the json by retrieving the values in javascript fashion
// like this:
var jsonService = jsonObject["SearchParkInfoService"];
var totalCount  = jsonService["list_total_count"];
var row         = jsonService["row"];

假设您的 jsonObject 看起来像:

{
   SearchParkInfoService : {
        list_total_count : <value>,
        row              : [<arrayvalues>,...]
   },
}
于 2012-11-20T13:25:46.033 回答