我做的是一个基于web的土地利用系统,以下是首页前台部分代码,用来获取数据库中土地利用数据并转换成json数据读取然后根据获取的坐标在Google地图上绘制出多边形,但是不知道怎么回事,DataQuery()执行结果总是返回error,好像这段代码
type: "POST",
contentType: 'application/json',
url: "WebMethods.aspx/GetAllSoilUse",
data: "{}",
dataType: 'json', //返回的类型为Json
总是起反作用一样,从来都不会跳转到success处。还请哪位高手帮忙指点指点,问题在哪里,为什么获取不到GetAllSoilUse返回的字符串,Google地图上也画不出多边形。
default.aspx部分代码:
//画多边形函数
function drawOverlay(SoilUse) {
//定义多边形的坐标点数组
var coordinates = [];
//多边形的坐标点数组从json数据中获取
var zuoBiao = [];
zuoBiao = SoilUse.SoilPosition.split(";");
for (var i = 0; i < zuoBiao.length - 1; i++) {
coordinates.push(new google.maps.LatLng(zuoBiao[i].substr(0, zuoBiao[i].indexOf(",")), zuoBiao[i].substr(zuoBiao[i].indexOf(",") + 1)));
}
//设置多边形参数
var polygon = new google.maps.Polygon({
path: coordinates,
strokeColor: SoilUse.STypeColor,
strokeOpacity: 0.8,
strokeWeight: 2,
fillColor: SoilUse.STypeColor,
fillOpacity: 0.35
});
//将多边形显示在地图上
polygon.setMap(map);
//将多边形放入查询结果数组中
SoilUsePolygons.push(polygon);
//定义信息窗口(显示当前点击的多边形土地块的基本信息)
var infowindow = new google.maps.InfoWindow({
content: '<div id="content"><div class="title">土地名称:<strong>' + SoilUse.SoilName + '</strong></div>' +
'<div class="bodyContent"><div>土地类型:' + SoilUse.SoilTypeName + '</div><div>土地面积:' + SoilUse.SoilArea + 'km<sup>2</sup></div><div>发布时间:' + SoilUse.Time + '</div></div></div>'
});
//为多边形添加Click事件(单击多边形时,弹出关于当前多边形土地块的信息窗口)