ESRI JS API 3.14 - Search Widget Demo

Search Widget Demo

by Alex Azuero

HTML

<script src="https://js.arcgis.com/3.14/init.js"></script>
<link rel="stylesheet" href="https://js.arcgis.com/3.14/esri/css/esri.css">
<link rel="stylesheet" href="https://js.arcgis.com/3.14/dijit/themes/claro/claro.css">
<script type="text/javascript">
    var dojoConfig = {
        async: true
    };
</script>
<div id="search"></div>
<div id="map"></div>

CSS

body, html {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
}
#map {
    height: 100%;
    width: 100%;
    margin: 0px;
}

#search {
    display: block;
    position: absolute;
    z-index: 2;
    top: 20px;
    left: 74px;
}

JavaScript

require(['esri/arcgis/utils', "esri/dijit/Search"], function (arcgisUtils, Search) {
    var createMapOptions = {
        mapOptions: {
            slider: true
        },
        usePopupManager: true, // since version 3.10

        geometryServiceURL: "http://sampleserver3.arcgisonline.com/ArcGIS/rest/services/Geometry/GeometryServer"

    };
    var webMapItemID = "cf58d9a115e84de9ac5613b8c9e0fe16";
    deferred = arcgisUtils.createMap(webMapItemID, "map", createMapOptions);

    deferred.then(function (response) {
        map = response.map;
		var s = new Search({
            map: map
         }, "search");
         s.startup();
    }, function (error) {
        console.log("Error: ", error.code, " Message: ", error.message);
        deferred.cancel();
    });
});