请原谅我,如果我的措辞不对,但我只是在学习GIS的东西。我正在对映射服务器进行ajax调用,在我的firebug控制台中,这正是我所看到的。
jQuery19008239585978290092_1392763042662({
"displayFieldName" : "name",
"fieldAliases" : {
"ID" : "ID",
"name" : "name"
},
"geometryType" : "esriGeometryPoint",
"spatialReference" : {
"wkid" : 102100
},
"fields" : [
{
"name" : "ID",
"type" : "esriFieldTypeInteger",
"alias" : "ID"
},
{
"name" : "name",
"type" : "esriFieldTypeString",
"alias" : "name",
"length" : 150
}
],
"features" : [{
"attributes" : {
"ID" : 114,
"name" : "LewisGale Hospital - Pulaski"
},
"geometry" : {
"x" : -8989914.6998432986,
"y" : 4448752.1187390834
}
}
]
});
我习惯使用的ajax调用没有jQuery19008239585978290092_1392763042662的一部分,所以我不知道如何处理这部分数据。
以下是我的成功陈述:
success: function (json) {
console.log(json);
},
没有返回通常会发生的任何事情。我认为jQuery19008239585978290092_1392763042662让我失望,我不知道如何处理json对象或如何以这种格式遍历它。我在这个数据集中需要的只是ID值,在这种情况下是114。
答案 0 :(得分:0)
日志输出的语法是函数调用的语法。有问题的函数名为jQuery19008239585978290092_1392763042662()
,它只使用一个参数:一个看起来像响应有效负载的匿名对象。
我想你可能会从Firebug的日志记录中得到奇怪的行为; jQuery在返回之前通过$.parseJSON()
运行JSON响应。尝试在成功处理程序中记录ID:console.log('id=', json.features[0].attributes.ID);
您也可以使用$.ajax
或$.get
方法以及dataType
json
或$.getJSON
使用其他内容}。如果是这样,您可能必须在AJAX调用中更明确地指定数据类型和/或accepts
值。