说明:
1)安装arcgis_js_api v3.9版本,可在我上传中的资源下载;
2)如何发布GP服务:参见我的博文http://blog.csdn.net/u010534192/article/details/53282489
代码:
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
<title>test GP</title>
<link rel="Stylesheet" type="text/css" href="http://localhost/arcgis_js_api/library/3.9/3.9/js/dojo/dijit/themes/claro/claro.css" />
<link rel="stylesheet" type="text/css" href="http://localhost/arcgis_js_api/library/3.9/3.9/js/esri/css/esri.css" />
<script type="text/javascript"> var djConfig = { parseOnLoad: true, url: "localhost" };</script>
<script type="text/javascript" src="http://localhost/arcgis_js_api/library/3.9/3.9/init.js"></script>
<style type="text/css">
html,body,#map{ height: 100%; width: 100%; margin: 0; padding: 0; }
</style>
<script type="text/javascript">
dojo.require("dijit.layout.BorderContainer");
dojo.require("dijit.layout.ContentPane");
dojo.require("esri.map");
dojo.require("esri.toolbars.draw");
dojo.require("esri.tasks.gp");
var map, gp;
var resultLayer;
var resultUrl;
var jobId;
var resultT;
function init() {
map = new esri.Map("map");
//底图,底图坐标系要与GP服务的坐标系相同
basemap = new esri.layers.ArcGISDynamicMapServiceLayer(
map.addLayer(basemap);
var button = dojo.byId("Submit");
dojo.connect(button, 'onclick', doSubmit);
}
function doSubmit() {
var gpUrl = "http://localhost/ArcGIS/rest/services/testIDW/GPServer/IDW";
gp = new esri.tasks.Geoprocessor(gpUrl);
var parms = {
//必填,否则报错:GPTask 'IDW' does not exist or is inaccessible
Z_value_field:"rain"
};
gp.submitJob(parms,jobResult);//异步方式
//gp.execute(parms,jobResult);//同步方式
}
function jobResult(result) {
var imageParams = new esri.layers.ImageParameters();
resultT=result;
jobId = result.jobId;
resultLayer=gp.getResultImageLayer(jobId, "Idw_result", imageParams);
console.log(resultLayer.url);
map.addLayer(resultLayer);
}
dojo.addOnLoad(init);
</script>
</head>
<body class="claro">
<div id="info">
<button id="Submit">Submit</button>
</div>
<div id="map" ></div>
</body>
</html>
注: Z_value_field不可省略,会报错:GPTask “” does not exist or is inaccessible