Solved! Go to Solution.
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <!--The viewport meta tag is used to improve the presentation and behavior of the samples on iOS devices--> <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"> <title>Find Address</title> <link rel="stylesheet" href="http://js.arcgis.com/3.8/js/dojo/dijit/themes/claro/claro.css"> <link rel="stylesheet" href="http://js.arcgis.com/3.8/js/esri/css/esri.css"> <style> html, body { height: 100%; width: 100%; margin: 0; padding: 0; } #map{ padding:0; border:solid 1px #343642; margin:5px 5px 5px 0px; } #top{ width:20%; border-top: solid 1px #343642; border-left: solid 1px #343642; border-bottom: solid 1px #343642; margin:5px 0px 5px 5px; color: #343642; font:90% Arial,"Arial",Arial,Arial; /*letter-spacing: 0.05em;*/ } </style> <script src="http://js.arcgis.com/3.8/"></script> <script> var map, locator; require([ "esri/map", "esri/tasks/locator", "esri/graphic", "esri/dijit/InfoWindowLite", "esri/InfoTemplate", "esri/layers/FeatureLayer", "dojo/dom-construct", "esri/InfoTemplate", "esri/symbols/SimpleMarkerSymbol", "esri/symbols/Font", "esri/symbols/TextSymbol", "dojo/_base/array", "dojo/_base/Color", "dojo/number", "dojo/parser", "dojo/dom", "dijit/registry", "dijit/form/Button", "dijit/form/Textarea", "dijit/layout/BorderContainer", "dijit/layout/ContentPane", "dojo/domReady!" ], function( Map, Locator, Graphic, InfoWindowLite, InfoTemplate, FeatureLayer, domConstruct, InfoTemplate, SimpleMarkerSymbol, Font, TextSymbol, arrayUtils, Color, number, parser, dom, registry ) { parser.parse(); var initExtent = new esri.geometry.Extent({"xmin":2155300,"ymin":1381110,"xmax":2157350,"ymax":1381877,"spatialReference":{"wkid":3436}}); var map = new esri.Map("map",{extent:initExtent}); var basemap = new esri.layers.ArcGISDynamicMapServiceLayer("http://gis.wiu.edu/arcgis/rest/services/mcdonough_highway_old/MapServer"); map.addLayer(basemap); /*var infoWindow = new InfoWindowLite(null, domConstruct.create("div", null, null, map.root)); infoWindow.startup(); map.setInfoWindow(infoWindow);*/ var template = new InfoTemplate(); template.setTitle("<b>${PARCELID}</b>"); template.setContent("${owner1_name} <br> ${site_address}"); //add a layer to the map var featureLayer = new FeatureLayer("http://gis.wiu.edu/arcgis/rest/services/mcdonough_highway/MapServer/21", { mode: FeatureLayer.MODE_ONDEMAND, infoTemplate:template, outFields: ["PARCELID" , "site_address", "owner1_name"] }); map.addLayer(featureLayer); map.infoWindow.resize(200, 75); on(dom.byId("address"), "keyup", function(event){ if (event.keyCode == 13 && this.value.length > 0) { locate(); } }) locator = new Locator("http://gis.wiu.edu/arcgis/rest/services/mcdonough_structure/GeocodeServer"); locator.on("address-to-locations-complete", showResults); // listen for button click then geocode <!--registry.byId("locate").on("click", locate);--> map.infoWindow.resize(200,125); dojo.connect(dom.byId("address"), 'onkeyup', function(event) { if (event.keyCode == 13 && this.value.length > 0) { locate(); } }); function locate() { map.graphics.clear(); var address = { "Street": dom.byId("address").value }; locator.outSpatialReference = map.spatialReference; var options = { address: address, outFields: ["HouseNum"] } locator.addressToLocations(options); } function showResults(evt) { var candidate; var symbol = new SimpleMarkerSymbol(); var infoTemplate = new InfoTemplate( "Location", "Address: ${address}<br />Score: ${score}<br />Source locator: ${locatorName}" ); symbol.setStyle(SimpleMarkerSymbol.STYLE_SQUARE); symbol.setSize(10); symbol.setColor(new Color("#ffff00")); var geom; arrayUtils.every(evt.addresses, function(candidate) { console.log(candidate.score); if (candidate.score > 80) { console.log(candidate.location); var attributes = { address: candidate.address, score: candidate.score, locatorName: candidate.attributes.StreetName }; geom = candidate.location; var graphic = new Graphic(geom, symbol, attributes, infoTemplate); //add a graphic to the map at the geocoded location map.graphics.add(graphic); //add a text symbol to the map listing the location of the matched address. var displayText = candidate.address; var font = new Font( "12pt", Font.STYLE_NORMAL, Font.VARIANT_NORMAL, Font.WEIGHT_BOLD, "Helvetica" ); var textSymbol = new TextSymbol( displayText, font, new Color("#ffff00") ); textSymbol.setOffset(0,15); map.graphics.add(new Graphic(geom, textSymbol)); return false; //break out of loop after one candidate with score greater than 80 is found. } else{ alert("No results found, please enter another address"); } }); if ( geom !== undefined ) { map.centerAndZoom(geom, 0.35); } } }); </script> </head> <body class="claro"> <div id="mainWindow" data-dojo-type="dijit/layout/BorderContainer" data-dojo-props="design:'sidebar', gutters:false" style="width:100%; height:100%;"> <div id="top" data-dojo-type="dijit/layout/ContentPane" data-dojo-props="region:'top'"> Enter address then hit ENTER. <br> Example: <b>232 e jackson st</b><br> <br> <input type="text" id="address" size="25" autofocus="autofocus"/> <br> </div> <div id="map" data-dojo-type="dijit/layout/ContentPane" data-dojo-props="region:'center'"> </div> </div> </body> </html>
on(dom.byId("address"), 'onkeyup', function(event) { if (event.keyCode == 13 && this.value.length > 0) { locate(); } });
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <!--The viewport meta tag is used to improve the presentation and behavior of the samples on iOS devices--> <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"> <title>Find Address</title> <link rel="stylesheet" href="http://js.arcgis.com/3.8/js/dojo/dijit/themes/claro/claro.css"> <link rel="stylesheet" href="http://js.arcgis.com/3.8/js/esri/css/esri.css"> <style> html, body { height: 100%; width: 100%; margin: 0; padding: 0; } #map{ padding:0; border:solid 1px #343642; margin:5px 5px 5px 0px; } #top{ width:20%; border-top: solid 1px #343642; border-left: solid 1px #343642; border-bottom: solid 1px #343642; margin:5px 0px 5px 5px; color: #343642; font:90% Arial,"Arial",Arial,Arial; /*letter-spacing: 0.05em;*/ } </style> <script src="http://js.arcgis.com/3.8/"></script> <script> var map, locator; require([ "esri/map", "esri/tasks/locator", "esri/graphic", "esri/dijit/InfoWindowLite", "esri/InfoTemplate", "esri/layers/FeatureLayer", "dojo/dom-construct", "esri/InfoTemplate", "esri/symbols/SimpleMarkerSymbol", "esri/symbols/Font", "esri/symbols/TextSymbol", "dojo/_base/array", "dojo/_base/Color", "dojo/number", "dojo/parser", "dojo/dom", "dojo/on", "dijit/registry", "dijit/form/Button", "dijit/form/Textarea", "dijit/layout/BorderContainer", "dijit/layout/ContentPane", "dojo/domReady!" ], function( Map, Locator, Graphic, InfoWindowLite, InfoTemplate, FeatureLayer, domConstruct, InfoTemplate, SimpleMarkerSymbol, Font, TextSymbol, arrayUtils, Color, number, parser, dom, on, registry ) { parser.parse(); var initExtent = new esri.geometry.Extent({"xmin":2155300,"ymin":1381110,"xmax":2157350,"ymax":1381877,"spatialReference":{"wkid":3436}}); var map = new esri.Map("map",{extent:initExtent}); var basemap = new esri.layers.ArcGISDynamicMapServiceLayer("http://gis.wiu.edu/arcgis/rest/services/mcdonough_highway_old/MapServer"); map.addLayer(basemap); /*var infoWindow = new InfoWindowLite(null, domConstruct.create("div", null, null, map.root)); infoWindow.startup(); map.setInfoWindow(infoWindow);*/ var template = new InfoTemplate(); template.setTitle("<b>${PARCELID}</b>"); template.setContent("${owner1_name} <br> ${site_address}"); //add a layer to the map var featureLayer = new FeatureLayer("http://gis.wiu.edu/arcgis/rest/services/mcdonough_highway/MapServer/21", { mode: FeatureLayer.MODE_ONDEMAND, infoTemplate:template, outFields: ["PARCELID" , "site_address", "owner1_name"] }); map.addLayer(featureLayer); map.infoWindow.resize(200, 75); on(dom.byId("address"), "keyup", function(event){ if (event.keyCode == 13 && this.value.length > 0) { locate(); } }) locator = new Locator("http://gis.wiu.edu/arcgis/rest/services/mcdonough_structure/GeocodeServer"); locator.on("address-to-locations-complete", showResults); // listen for button click then geocode map.infoWindow.resize(200,125); on(dom.byId("address"), 'onkeyup', function(event) { if (event.keyCode == 13 && this.value.length > 0) { locate(); } }); function locate() { map.graphics.clear(); var address = { "Street": dom.byId("address").value }; locator.outSpatialReference = map.spatialReference; var options = { address: address, outFields: ["HouseNum"] } locator.addressToLocations(options); } function showResults(evt) { var candidate; var symbol = new SimpleMarkerSymbol(); var infoTemplate = new InfoTemplate( "Location", "Address: ${address}<br />Score: ${score}<br />Source locator: ${locatorName}" ); symbol.setStyle(SimpleMarkerSymbol.STYLE_SQUARE); symbol.setSize(10); symbol.setColor(new Color("#ffff00")); var geom; arrayUtils.every(evt.addresses, function(candidate) { console.log(candidate.score); if (candidate.score > 80) { console.log(candidate.location); var attributes = { address: candidate.address, score: candidate.score, locatorName: candidate.attributes.StreetName }; geom = candidate.location; var graphic = new Graphic(geom, symbol, attributes, infoTemplate); //add a graphic to the map at the geocoded location map.graphics.add(graphic); //add a text symbol to the map listing the location of the matched address. var displayText = candidate.address; var font = new Font( "12pt", Font.STYLE_NORMAL, Font.VARIANT_NORMAL, Font.WEIGHT_BOLD, "Helvetica" ); var textSymbol = new TextSymbol( displayText, font, new Color("#ffff00") ); textSymbol.setOffset(0,15); map.graphics.add(new Graphic(geom, textSymbol)); return false; //break out of loop after one candidate with score greater than 80 is found. } else{ alert("No results found, please enter another address"); } }); if ( geom !== undefined ) { map.centerAndZoom(geom, 0.35); } } }); </script> </head> <body class="claro"> <div id="mainWindow" data-dojo-type="dijit/layout/BorderContainer" data-dojo-props="design:'sidebar', gutters:false" style="width:100%; height:100%;"> <div id="top" data-dojo-type="dijit/layout/ContentPane" data-dojo-props="region:'top'"> Enter address then hit ENTER. <br> Example: <b>232 e jackson st</b><br> <br> <input type="text" id="address" size="25" autofocus="autofocus"/> <br> </div> <div id="map" data-dojo-type="dijit/layout/ContentPane" data-dojo-props="region:'center'"> </div> </div> </body> </html>
var basemap2 = new ArcGISTiledMapServiceLayer("http://gis.wiu.edu/arcgis/rest/services/basemap/aerial_cache/MapServer"); map.addLayer(basemap2); var basemap = new esri.layers.ArcGISDynamicMapServiceLayer("http://gis.wiu.edu/arcgis/rest/services/mcdonough_mobile/MapServer", {"opacity" : 0.5,}); map.addLayer(basemap);
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <!--The viewport meta tag is used to improve the presentation and behavior of the samples on iOS devices--> <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no"> <title>Find Address</title> <link rel="stylesheet" href="http://js.arcgis.com/3.8/js/dojo/dijit/themes/claro/claro.css"> <link rel="stylesheet" href="http://js.arcgis.com/3.8/js/esri/css/esri.css"> <style> html, body { height: 100%; width: 100%; margin: 0; padding: 0; } #map{ padding:0; border:solid 1px #343642; margin:5px 5px 5px 0px; } #top{ width:20%; border-top: solid 1px #343642; border-left: solid 1px #343642; border-bottom: solid 1px #343642; margin:5px 0px 5px 5px; color: #343642; font:90% Arial,"Arial",Arial,Arial; /*letter-spacing: 0.05em;*/ } </style> <script> (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i=i ||function(){ (i .q=i .q||[]).push(arguments)},i .l=1*new Date();a=s.createElement(o), m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m) })(window,document,'script','//www.google-analytics.com/analytics.js','ga'); ga('create', 'UA-21888440-1', 'wiu.edu'); ga('send', 'pageview'); </script> <script src="http://js.arcgis.com/3.8/"></script> <script> var map, locator; require([ "esri/map", "esri/tasks/locator", "esri/graphic", "esri/dijit/InfoWindowLite", "esri/InfoTemplate", "esri/layers/FeatureLayer", "dojo/dom-construct", "esri/InfoTemplate", "esri/symbols/SimpleMarkerSymbol", "esri/symbols/Font", "esri/symbols/TextSymbol", "dojo/_base/array", "dojo/_base/Color", "dojo/number", "dojo/parser", "dojo/dom", "dojo/on", "dijit/registry", "esri/layers/ArcGISDynamicMapServiceLayer", "esri/layers/ArcGISTiledMapServiceLayer", "dijit/form/Button", "dijit/form/Textarea", "dijit/layout/BorderContainer", "dijit/layout/ContentPane", "dojo/domReady!" ], function( Map, Locator, Graphic, InfoWindowLite, InfoTemplate, FeatureLayer, domConstruct, InfoTemplate, SimpleMarkerSymbol, Font, TextSymbol, arrayUtils, Color, number, parser, dom, on, registry, ArcGISDynamicMapServiceLayer, ArcGISTiledMapServiceLayer ) { parser.parse(); -->var initExtent = new esri.geometry.Extent({"xmin":2155300,"ymin":1381110,"xmax":2157350,"ymax":1381877,"spatialReference":{"wkid":3436}}); var initExtent = new esri.geometry.Extent({"xmin":-10093755,"ymin":4932648,"xmax":-10093139,"ymax":4933004,"spatialReference":{"wkid":3857}}); var map = new esri.Map("map",{extent:initExtent}); var basemap2 = new ArcGISTiledMapServiceLayer("http://gis.wiu.edu/arcgis/rest/services/basemap/aerial_cache/MapServer"); map.addLayer(basemap2); var basemap = new esri.layers.ArcGISDynamicMapServiceLayer("http://gis.wiu.edu/arcgis/rest/services/mcdonough_mobile/MapServer"); map.addLayer(basemap); /*var infoWindow = new InfoWindowLite(null, domConstruct.create("div", null, null, map.root)); infoWindow.startup(); map.setInfoWindow(infoWindow);*/ var template = new InfoTemplate(); template.setTitle("<b>${PARCELID}</b>"); template.setContent("${owner1_name} <br> ${site_address}"); //add a layer to the map var featureLayer = new FeatureLayer("http://gis.wiu.edu/arcgis/rest/services/mcdonough_highway/MapServer/21", { mode: FeatureLayer.MODE_ONDEMAND, infoTemplate:template, outFields: ["PARCELID" , "site_address", "owner1_name"] }); map.addLayer(featureLayer); map.infoWindow.resize(200, 75); on(dom.byId("address"), "keyup", function(event){ if (event.keyCode == 13 && this.value.length > 0) { locate(); } }) locator = new Locator("http://gis.wiu.edu/arcgis/rest/services/mcdonough_structure/GeocodeServer"); locator.on("address-to-locations-complete", showResults); // listen for button click then geocode map.infoWindow.resize(200,125); on(dom.byId("address"), 'onkeyup', function(event) { if (event.keyCode == 13 && this.value.length > 0) { locate(); } }); function locate() { map.graphics.clear(); var address = { "Street": dom.byId("address").value }; locator.outSpatialReference = map.spatialReference; var options = { address: address, outFields: ["HouseNum"] } locator.addressToLocations(options); } function showResults(evt) { var candidate; var symbol = new SimpleMarkerSymbol(); var infoTemplate = new InfoTemplate( "Location", "Address: ${address}<br />Score: ${score}<br />Source locator: ${locatorName}" ); symbol.setStyle(SimpleMarkerSymbol.STYLE_SQUARE); symbol.setSize(10); symbol.setColor(new Color("#ffff00")); var geom; arrayUtils.every(evt.addresses, function(candidate) { console.log(candidate.score); if (candidate.score > 80) { console.log(candidate.location); var attributes = { address: candidate.address, score: candidate.score, locatorName: candidate.attributes.StreetName }; geom = candidate.location; var graphic = new Graphic(geom, symbol, attributes, infoTemplate); //add a graphic to the map at the geocoded location map.graphics.add(graphic); //add a text symbol to the map listing the location of the matched address. var displayText = candidate.address; var font = new Font( "12pt", Font.STYLE_NORMAL, Font.VARIANT_NORMAL, Font.WEIGHT_BOLD, "Helvetica" ); var textSymbol = new TextSymbol( displayText, font, new Color("#ffff00") ); textSymbol.setOffset(0,15); map.graphics.add(new Graphic(geom, textSymbol)); return false; //break out of loop after one candidate with score greater than 80 is found. } else{ alert("No results found, please enter another address"); } }); if ( geom !== undefined ) { map.centerAndZoom(geom, 0.5); } } }); </script> </head> <body class="claro"> <div id="mainWindow" data-dojo-type="dijit/layout/BorderContainer" data-dojo-props="design:'sidebar', gutters:false" style="width:100%; height:100%;"> <div id="top" data-dojo-type="dijit/layout/ContentPane" data-dojo-props="region:'top'"> Enter address then hit ENTER. <br> Example: <b>232 e jackson st</b><br> <br> <input type="text" id="address" size="25" autofocus="autofocus"/> <br> </div> <div id="map" data-dojo-type="dijit/layout/ContentPane" data-dojo-props="region:'center'"> </div> </div> </body> </html>
map.centerAndZoom(geom, 19);