var inputAddress = { "SingleLine" : dojo.byId("txtAddress").value };
var checkMO = inputAddress.SingleLine.slice(-2).toUpperCase(); if ( checkMO !== 'MO' ) { console.log("not MO"); inputAddress = inputAddress.SingleLine + ", MO"; console.log(inputAddress); }else { console.log(inputAddress.SingleLine + " has MO"); }
locator.outSpatialReference = map.spatialReference; var options = { address : inputAddress, outFields : ["*"] }; locator.addressToLocations(inputAddress); }
Solved! Go to Solution.
inputAddress = { "SingleLine" : dojo.byId("txtAddress").value };
function locate() { map.graphics.clear(); locator.outSpatialReference = map.spatialReference; var inputAddress = { "SingleLine" : dojo.byId("txtAddress").value }; // console.log(address.SingleLine); var checkMO = inputAddress.SingleLine.slice(-2).toUpperCase(); var isNotANumber = false; if (isNaN(checkMO)){ isNotANumber = true; } var options; if ( checkMO !== 'MO' && isNotANumber ) { // console.log("not MO"); var newInputAddress = {"SingleLine" : dojo.byId("txtAddress").value + ",MO"}; options = { address : newInputAddress, outFields : ["*"] }; locator.addressToLocations(newInputAddress); }else { // console.log(inputAddress.SingleLine + "has MO"); options = { address : inputAddress, outFields : ["*"] }; locator.addressToLocations(inputAddress); } }
Next I check to see if inputAddress already has the Missouri prefix, MO, at the end of the string:var checkMO = inputAddress.SingleLine.slice(-2).toUpperCase(); if ( checkMO !== 'MO' ) { console.log("not MO"); inputAddress = inputAddress.SingleLine + ", MO"; console.log(inputAddress); }else { console.log(inputAddress.SingleLine + " has MO"); }
...programmatically manage adding MO at the end of a city name *if the user doesn't specify*.
inputAddress = { "SingleLine" : dojo.byId("txtAddress").value };
function locate() { map.graphics.clear(); locator.outSpatialReference = map.spatialReference; var inputAddress = { "SingleLine" : dojo.byId("txtAddress").value }; // console.log(address.SingleLine); var checkMO = inputAddress.SingleLine.slice(-2).toUpperCase(); var isNotANumber = false; if (isNaN(checkMO)){ isNotANumber = true; } var options; if ( checkMO !== 'MO' && isNotANumber ) { // console.log("not MO"); var newInputAddress = {"SingleLine" : dojo.byId("txtAddress").value + ",MO"}; options = { address : newInputAddress, outFields : ["*"] }; locator.addressToLocations(newInputAddress); }else { // console.log(inputAddress.SingleLine + "has MO"); options = { address : inputAddress, outFields : ["*"] }; locator.addressToLocations(inputAddress); } }