<!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);
您能提供解决问题的建议吗?
答案 0 :(得分:2)
您没有在JavaScript中定义这样的变量:
JSONObject jsonRoot = new JSONObject(result);
因为它不是强类型语言。您可以这样定义此变量:
var jsonRoot = new JSONObject(result);
答案 1 :(得分: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>,...]
},
}