0
這是我的OpenLayers 3.9.0像定製列表過濾器設置剎車通配符過濾
var cqlFilter = "name='testpoint9'";
var urlTemplate = 'http://localhost:5550/geoserver/mymap/wfs?
var sourceVector = new ol.source.Vector({
service=WFS&version=1.0.0&request=GetFeature&typeName=mymap:layer&CQL_FILTER={{CQLFILTER}}&outputFormat=application/json';
loader : function (extent) {
var url = urlTemplate.replace('{{CQLFILTER}}', cqlFilter);
$.ajax(url, {
type: 'GET',
success: function(response) {
var res = response.responseText;
var geojsonFormat = new ol.format.GeoJSON();
sourceVector.addFeatures(geojsonFormat.readFeatures(response));
}
})
};
strategy : new ol.loadingstrategy.tile(ol.tilegrid.createXYZ({maxZoom: 20}));
})
function changeFilter() {
var featsToRemove = layerVector.getSource().getFeatures();
for (var f=0;f<featsToRemove.length;f++)
{
layerVector.getSource().removeFeature(featsToRemove[f]);
}
cqlFilter = "name LIKE 'p'";
sourceVector.clear(true);
}
changeFilter
功能過濾器用戶點擊按鈕之後被調用。更改全局變量cqlFilter
並重新加載功能。
的問題是,定製列表過濾器現在工作"name LIKE 'p'"
,但如果我嘗試添加一個通配符,發現與對"name LIKE 'p%'"
這不會工作開始的名字,我也沒有得到任何錯誤消息。
我該如何解決這個問題?
謝謝
認爲這是一個過濾器相關的事情。謝謝 – slevin
沒有probs amigo。樂意效勞 – pavlos