var map, geocoder, extent, sr, currentExtent, censusdef, featureLayer, loadStates, renderer, selected_state; require(["esri/map", "esri/layers/FeatureLayer", "esri/InfoTemplate", "esri/symbols/SimpleLineSymbol", "esri/symbols/SimpleFillSymbol", "esri/renderers/SimpleRenderer", "esri/tasks/query", "dojo/parser", "dojo/_base/Color", "dijit/layout/BorderContainer", "dijit/layout/ContentPane", "dojo/domReady!"], function(Map, FeatureLayer, InfoTemplate, SimpleLineSymbol, SimpleFillSymbol, SimpleRenderer, parser, Color, Query) { map = new esri.Map("map", { center: [-96.24, 38.1], zoom: 4, basemap: "hybrid" }); sr = new esri.SpatialReference({wkid:4326}); currentExtent = new esri.geometry.Extent(); var symbol = new SimpleFillSymbol().setColor(new Color([255,0,0,0.4])); var renderer = new SimpleRenderer(symbol); featureLayer = new esri.layers.FeatureLayer("http://sampleserver6.arcgisonline.com/arcgis/rest/services/USA/MapServer/2", { //infoTemplate: new InfoTemplate(" ", "${state_name}"), mode: esri.layers.FeatureLayer.MODE_ONDEMAND, displayOnPan: true, styling: true }); var b = document.getElementById('showstate'); var selected_state = document.getElementById('statename').value; featureLayer.setDefinitionExpression("state_name = '"+selected_state+"'"); featureLayer.setRenderer(renderer); b.addEventListener('click', function (){ var b = document.getElementById('showstate'); var selected_state = document.getElementById('statename').value; //featureLayer.setDefinitionExpression("state_name = '"+selected_state+"'"); featureLayer.setRenderer(renderer); map.addLayer(featureLayer); }, false); });
Solved! Go to Solution.
//Zoom to the parcel when the user clicks a row function onRowClickHandler(evt) { var clickedTaxLotId = evt.grid.getItem(evt.rowIndex).PARCELID; var selectedTaxLot = arrayUtils.filter(map.graphics.graphics, function (graphic) { return ((graphic.attributes) && graphic.attributes.PARCELID === clickedTaxLotId); }); if ( selectedTaxLot.length ) { map.setExtent(selectedTaxLot[0].geometry.getExtent(), true); } }
//Zoom to the parcel when the user clicks a row function onRowClickHandler(evt) { var clickedTaxLotId = evt.grid.getItem(evt.rowIndex).PARCELID; var selectedTaxLot = arrayUtils.filter(map.graphics.graphics, function (graphic) { return ((graphic.attributes) && graphic.attributes.PARCELID === clickedTaxLotId); }); if ( selectedTaxLot.length ) { map.setExtent(selectedTaxLot[0].geometry.getExtent(), true); } }