You need to sign in to do that
Don't have an account?
Problem with alert in Javascript
Hi,
I am developing a visual force page which is calculating zip code through Reverse geocoding and Google Place api.
When i am using alert between the code then output is correct for array1 variable but if i remove all the alert then value of array1 is undefined. I don't want any alert in code.
Code snippt is given below
<apex:page id="pgId" showHeader="false" sidebar="false">
<html>
<head>
<script language="JavaScript" src="http://j.maxmind.com/app/geoip.js"></script>
<script type="text/javascript" src="https://maps-api-ssl.google.com/maps/api/js?v=3&sensor=true&libraries=places"></script>
<script type="text/javascript">
var array1;
var map;
var infowindow;
var lat = 40.5998;
var lng = -74.5542;
var geo;
function initialize() {
var pyrmont = new google.maps.LatLng(lat, lng);
map = new google.maps.Map(document.getElementById('map'), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: pyrmont,
zoom: 15
});
var request = {
location: pyrmont,
radius: 120000,
types: ['store']
};
geo = new google.maps.Geocoder();
var service = new google.maps.places.PlacesService(map);
service.search(request, callback);
}
function callback(results, status) {
var geocoder;
var map;
var infowindow = new google.maps.InfoWindow();
var marker;
if (status == google.maps.places.PlacesServiceStatus.OK) {
for (var i = 0; i < results.length; i++) {
var s=results[i].geometry.location;
alert(s);
var la =s.lat();
var ln =s.lng();
alert(la);
alert(ln);
geo = new google.maps.Geocoder();
alert(la+','+ln);
var lat = parseFloat(la);
var lng = parseFloat(ln);
var latlng = new google.maps.LatLng(lat,lng);
geo.geocode({'latLng': latlng}, function(res, status) {
if (status == google.maps.GeocoderStatus.OK) {
alert(res[1].formatted_address);
var a=res[1].formatted_address;
var u=a.indexOf(",");
var n= a.lastIndexOf(",");
var t = a.substring(u,n);
var l = t.substring(t.lastIndexOf(","),t.length);
var p = l.substring(4,l.length);
alert(p);
if(array1==null)
array1 = p;
else
array1 = array1 + p + ';';
alert(array1);
if (res[1]) {
alert(res[1].formatted_address);
} else {
alert("No results found");
}
} else {
alert("Geocoder failed due to: " + status);
}
});
}
}
alert(array1);
var url = '/apex/searcheventvf2?city=' + array1;
window.open(url, '_self', 'width=400,height=200');
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body>
<div id="map" style="display:none"></div>
</body>
</html>
</apex:page>
Thanks,
Soni