目录
一、引言
上文介绍了通过WFS服务进行添加,在很多情况下我们会对当前添加的要素进行修改,本篇将进行介绍,与添加大同小异,不过还是要有细节需要关注。
二、WFS更改要素实现
代码前提是使用interaction的modify对象,“modifyend”事件获取feature对象后,进行保存。
if (modifyFeatures && modifyFeatures.getLength() > 0) {
var modifyFeature = modifyFeatures.item(0).clone();
modifyFeature.setId(modifyFeatures.item(0).getId());
modifyFeature.set('Text', '修改后的text');
/* modifyFeature.set('the_geom', modifyFeature.getGeometry());
modifyFeature.unset("geometry");*/
modifyFeature.setGeometryName("the_geom");
var format = new ol.format.WFS();
var xml = format.writeTransaction(null, [modifyFeature], null, {
featureNS: 'http://geoserver.org/nyc',
featurePrefix: "xcy",//工作空间名称
featureType: "polygon"//图层名称
});
var serializer = new XMLSerializer();
var featString = serializer.serializeToString(xml);
$.ajax({
url: "http://localhost:8080/geoserver/wfs",
type: "POST"