转:http://blog.csdn.net/wd4java/article/details/43266241
在Draw工具中 draw-end(画图结束后想地图添加图形)
发现第一次添加一个图形,第二次添加两个图形,第三次添加三个图形,依次递增
-
- function addLifeBoundary(){
- alert("新增图形");
- lifeFeatureLayer.clearSelection();
- lifeFeatureLayer.refresh();
- drawToolbar.activate(Draw.POLYGON);
- lifeFeatureLayer.remove(newGraphic);
- drawToolbar.on("draw-complete", addToMap);
-
-
- }
- function addToMap(evt) {
- var polygonSymbol = new SimpleFillSymbol(
- SimpleFillSymbol.STYLE_SOLID,
- new SimpleLineSymbol(
- SimpleLineSymbol.STYLE_SOLID,
- new Color([151, 249, 0, 0.8]),
- 3
- ),
- new Color([151, 249, 0, 0.45])
- );
-
- var newGraphic1 = new Graphic(evt.geometry,polygonSymbol);
- lifeFeatureLayer.applyEdits([newGraphic1],null, null);
-
- drawToolbar.finishDrawing();
-
- drawToolbar.deactivate();
- map.removeLayer(lifeFeatureLayer);
- map.addLayer(lifeFeatureLayer);
- event.stop(evt);
- }
解决方法就是
添加个event.stop(evt)
event.stop(evt)具体写法
- dojo.addOnLoad(function(){
- var node = dojo.byId("delete");
- dojo.connect(node, "onclick", function(e){
- dojo.stopEvent(e); // prevents default link execution
- // some code custom execution
- });
- });
- <a href="/delete" id="delete">Delete</a>
上面是禁用事件的方法
另一种方法就是把drawtoolbar 设置成局部变量
顺便记录下禁用图层点击
- layer.on("click",function(evt){
- event.stop(evt);
- });