findDistrictTask = new FindTask("http://summitgis.summitoh.net:6080/arcgis/rest/services/DOES/MapServer/"); map.on("load", function () { findDistrictParams = new FindParameters(); findDistrictParams.returnGeometry = true; findDistrictParams.layerIds = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; findDistrictParams.searchFields = ["NAME, UNAME, PUMPID, PIPEID, PlantID, Name"]; findDistrictParams.outSpatialReference = map.spatialReference; }); function doDoesDistrictFind() { findDistrictParams.searchText = dom.byId("doesDistrictText").value; findDistrictTask.execute(findDistrictParams, showResults); } function showResults(results) { var markerSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_SQUARE, 10, new SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25])); var lineSymbol = new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASH, new dojo.Color([255, 0, 0]), 1); var polygonSymbol = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_NONE, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASHDOT, new dojo.Color([255, 0, 0]), 2), new dojo.Color([255, 255, 0, 0.25])); map.graphics.clear(); var dataForGrid = []; arrayUtils.map(results, function (result) { var graphic = result.feature; dataForGrid.push([result.layerName, result.foundFieldName, result.value]); switch (graphic.geometry.type) { case "point": graphic.setSymbol(markerSymbol); break; case "polyline": graphic.setSymbol(lineSymbol); break; case "polygon": graphic.setSymbol(polygonSymbol); break; } map.graphics.add(graphic); }); var data = { items: dataForGrid }; var store = new ItemFileReadStore({ data: data }); var grid = registry.byId("grid"); grid.setStore(store); grid.on("rowclick", onRowClickHandler); map.centerAndZoom(center, zoom); } function onRowClickHandler(evt) { var clickedFeature = evt.grid.getItem(evt.rowIndex).OBJECTID; var selectedFeature = arrayUtils.filter(map.graphics.graphics, function (graphic) { return ((graphic.attributes) && graphic.attributes.OBJECTID === clickedFeature); }); var featureExtent = selectedFeature.geometry.getExtent(); var screenpoint = map.toScreen(selectedFeature.geometry.getExtent().getCenter()); var mappoint = map.toMap(screenpoint); map.centerAt(mappoint); if (selectedFeature.geometry.declaredClass == 'esri.geometry.Point') { map.centerAt(selectedFeature.geometry); } else { var featureExtent = selectedFeature.geometry.getExtent(); var screenpoint = map.toScreen(selectedFeature.geometry.getExtent().getCenter()); var mappoint = map.toMap(screenpoint); map.centerAt(mappoint); } }
Solved! Go to Solution.
function onRowClickHandler(evt) { var grid = registry.byId("grid"); var clickedObjectf = evt.grid.getItem(evt.rowIndex).OBJECTID; var selectedObjectf; var distance = 50; dojo.forEach(map.graphics.graphics, function (graphicf) { if ((graphicf.attributes) && graphicf.attributes.OBJECTID === clickedObjectf) { selectedObjectf = graphicf; return; } }); if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Point') { var PointExtent = new esri.geometry.Extent({ "xmin": selectedObjectf.geometry.x - distance, "ymin": selectedObjectf.geometry.y - distance, "xmax": selectedObjectf.geometry.x + distance, "ymax": selectedObjectf.geometry.y + distance, "spatialReference": { "wkid": 102100 } }); map.setExtent(PointExtent); } else if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Polygon') { var selectedParcel = selectedObjectf.geometry.getExtent(); map.setExtent(selectedParcel); } }
if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Point') {
dojo.forEach(map.graphics.graphics, function (graphicf) { if ((graphicf.attributes) && graphicf.attributes.OBJECTID === clickedObjectf) { selectedObjectf = graphicf; return; } });
function onRowClickHandler(evt) { var clickedObjectf = grid.getItem(evt.rowIndex).OBJECTID; var selectedObjectf; var distance = 50; dojo.forEach(map.graphics.graphics, function(graphicf) { if ((graphicf.attributes) && graphicf.attributes.OBJECTID === clickedObjectf) { selectedObjectf = graphicf; return; } }); if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Point'){ var PointExtent = new esri.geometry.Extent({ "xmin" : selectedObjectf.geometry.x - distance, "ymin" : selectedObjectf.geometry.y - distance, "xmax" : selectedObjectf.geometry.x + distance, "ymax" : selectedObjectf.geometry.y + distance, "spatialReference" : { "wkid" : 102100 } }); map.setExtent(PointExtent); } else if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Polygon'){ var selectedParcel = selectedObjectf.geometry.getExtent(); map.setExtent(selectedParcel); } }
function onRowClickHandler(evt) { var clickedObjectf = evt.grid.getItem(evt.rowIndex).OBJECTID; var selectedObjectf = arrayUtils.filter(map.graphics.graphics, function (graphicf){ return ((graphicf.attributes) && graphicf.attributes.OBJECTID === clickedObjectf); }); var distance = 50; if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Point') { var PointExtent = new esri.geometry.Extent({ "xmin": selectedObjectf.geometry.x - distance, "ymin": selectedObjectf.geometry.y - distance, "xmax": selectedObjectf.geometry.x + distance, "ymax": selectedObjectf.geometry.y + distance, "spatialReference": { "wkid": 102100 } }); map.setExtent(PointExtent); } else if (selectedObjectf.geometry.declaredClass == 'esri.geometry.Polygon') { var selectedParcel = selectedObjectf.geometry.getExtent(); map.setExtent(selectedParcel); } }
function showResults(results) { if (results.length > 0) { map.graphics.clear(); var markerSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_SQUARE, 10, new SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25])); var lineSymbol = new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASH, new dojo.Color([255, 0, 0]), 1); var polygonSymbol = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_NONE, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASHDOT, new dojo.Color([255, 0, 0]), 2), new dojo.Color([255, 255, 0, 0.25])); var dataForGrid = []; arrayUtils.map(results, function (result) { var graphic = result.feature; dataForGrid.push([result.layerName, result.foundFieldName, result.value]); switch (graphic.geometry.type) { case "point": graphic.setSymbol(markerSymbol); break; case "polyline": graphic.setSymbol(lineSymbol); break; case "polygon": graphic.setSymbol(polygonSymbol); break; } map.graphics.add(graphic); return result.feature.attributes; }); var data = { items: dataForGrid }; var store = new ItemFileReadStore({ data: data }); var grid = registry.byId("grid"); grid.setStore(store); grid.on("rowclick", onRowClickHandler); map.centerAndZoom(center, zoom); } else { alert("No Utility Feature found! Please enter a valid UNAME, PIPEID, Plant ID, PUMPID or Name."); } }
function showResults(results) { if (results.length > 0) { map.graphics.clear(); var markerSymbol = new SimpleMarkerSymbol(SimpleMarkerSymbol.STYLE_SQUARE, 10, new SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_SOLID, new dojo.Color([255, 0, 0]), 1), new dojo.Color([0, 255, 0, 0.25])); var lineSymbol = new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASH, new dojo.Color([255, 0, 0]), 1); var polygonSymbol = new esri.symbol.SimpleFillSymbol(esri.symbol.SimpleFillSymbol.STYLE_NONE, new esri.symbol.SimpleLineSymbol(esri.symbol.SimpleLineSymbol.STYLE_DASHDOT, new dojo.Color([255, 0, 0]), 2), new dojo.Color([255, 255, 0, 0.25])); var items = arrayUtils.map(results, function (result) { var graphic = result.feature; switch (graphic.geometry.type) { case "point": graphic.setSymbol(markerSymbol); break; case "polyline": graphic.setSymbol(lineSymbol); break; case "polygon": graphic.setSymbol(polygonSymbol); break; } map.graphics.add(graphic); return result.feature.attributes; }); var data = { identifier: "OBJECTID", label: "OBJECTID", items: items }; var store = new ItemFileReadStore({ data: data }); var grid = registry.byId("grid"); grid.setStore(store); grid.on("rowclick", onRowClickHandler); map.centerAndZoom(center, zoom); } else { alert("No Utility Feature found! Please enter a valid UNAME, PIPEID, Plant ID, PUMPID or Name."); } }