arcgis api js 之FeatureLayer(过滤featureLayer图层)

require:["esri/layers/FeatureLayer"]
function showBlock(_blockbm, _area) {
	 removeClassifyLayer();
	 var flayerSymbol = new SimpleFillSymbol(
			//style
			SimpleFillSymbol.STYLE_SOLID,
			//outline
			new SimpleLineSymbol(
				//style
				SimpleLineSymbol.STYLE_SOLID,
				//color
				new dojo.Color({r: 90, g: 255, b: 70, a: 1}),
				//width
				2
			),
			//color
			new dojo.Color({r: 33, g: 119, b: 199, a: 0.55})
	 );

		var flayerUrl = http://localhost:6080/arcgis/rest/services/GXnew/kzgh0808/MapServer/0; //MapServer中的0图层
		var classifyField1 = _blockbm; 
		var classifyField2 = _area;

		var fl = new FeatureLayer(flayerUrl, {
			mode: FeatureLayer.MODE_AUTO, //MODE_ONDEMAND //MODE_SNAPSHOT
			outFields: ["*"]
		});
		fl.id = "classifyFeatureLayer";
		map.addLayer(fl);

		//Shape_Area、YDDM为MapServer 0图层中的属性字段,下面括号中的为筛选条件
		 fl.setDefinitionExpression("Shape_Area" + " > " + classifyField2 +" and "+ "YDDM" + " like '" + classifyField1 + "%'");
		
		//如果使用指定的样式显示则加上下面的两行;如果使用配图中的样式则不加
		// var renderer = new SimpleRenderer(flayerSymbol);
		// fl.setRenderer(renderer);


}
function removeClassifyLayer() {
	if (map.getLayer("classifyFeatureLayer")) {
		map.removeLayer(map.getLayer("classifyFeatureLayer"));
	}
}

猜你喜欢

转载自blog.csdn.net/wangchaohpu/article/details/81942974