It looks like the data returned is an object and not an array. so when you
say "for (var i=0; i < data.length; i++) {" there is no length property of
the data object. Instead you should try "for (var i=0; i <
data.results.length; i++) {" which is, I assume, an array of potential
geocoding results.

Also, it looks like you're declaring your "lat" and "lng" variables inside a
loop. If you do it this way they won't be accessible outside of the loop.
Try declaring "lat" and "lng" outside of the loop and setting them inside.
Kind of like this:
<script>
var lat; //Declare here
var lng;
function parseMarkerList(data) {
 for (var i=0; i < data.length; i++) {
       lat = data[i].Latitude; // Where Latitude is the node name //Set here
       lng = data[i].Longitude; // Where Longitude is the node name
       //createMarker(lat, lng);
   }
}
</script>

On Fri, May 28, 2010 at 10:59 AM, Ron Calzone <[email protected]> wrote:

> Pete,
>
> Thank you for your kind answer and patience with my ignorance of the finer
> aspects of Javascript!
>
> I have spent several hours trying to work this out and am getting nowhere.
>  I have a time-sensitive project, so I need to ask for more help.
>
> Why doesn't the following work?  Is it necessary to specify another page
> for the return json, or can a script on the same page process it?
>
> Thanks!!!
>
> - Ron
>
>
> <!DOCTYPE html>
> <html>
> <head>
> <style>img{ height: 100px; float: left; }</style>
> <script src="http://code.jquery.com/jquery-latest.min.js";></script>
> <script>
> $(document).ready(function() {
>    $.getJSON("
> http://maps.google.com/maps/api/geocode/json?address=201+W+Capitol+Ave,+Jefferson+City,+MO,+651011&sensor=false";,
> function(data) {
>  parseMarkerList(data); //data = JSON returned
>  alert(data);
>    });
> });
> </script>
>
> <script>
> function parseMarkerList(data) {
>  for (var i=0; i < data.length; i++) {
>        var lat = data[i].Latitude; // Where Latitude is the node name
>        var lng = data[i].Longitude; // Where Longitude is the node name
>        //createMarker(lat, lng);
>    }
> }
> </script>
> </head>
>
> <body>
> <script>
> alert("Lat: " + lat +"Lng: " + lng);
> </script>
>
>
> </body>
> </html>
>
>
> On 5/27/2010 6:23 PM, pete wrote:
>
>> Hi there,
>>
>> Whilst capturing a web service request and parsing it's data is not a
>> Google Maps API related question, I'll attempt to answer as best as
>> possible for your current query.
>>
>> Firstly, using a framework like JQuery makes this task extremely
>> simple, with their $.getJSON method. For documentation see:
>> http://api.jquery.com/jQuery.getJSON/
>>
>> You can then write some code to fetch the feed, and store it in a
>> "data" variable
>>
>> $(document).ready(function() {
>>     $.getJSON("http://localhost/myService.aspx, function(data) {
>>         parseMarkerList(data); //data = JSON returned
>>     });
>> });
>>
>> Your parseMarkerList(data) function can then loop through the JSON
>> returned, and pull out nodes such as Latitude, Longitude etc,
>> something such as:
>>
>> function parseMarkerList(data) {
>>     for (var i=0; i<  data.length; i++) {
>>         var lat = data[i].Latitude; // Where Latitude is the node name
>>         var lng = data[i].Longitude; // Where Longitudeis the node
>> name
>>         createMarker(lat, lng);
>>     }
>> }
>>
>> The createMarker function can then be a simple function that drops
>> markers on the map, see:
>>
>> http://code.google.com/apis/maps/documentation/javascript/examples/marker-simple.html
>>
>> Hope this has helped you.
>> The key is passing your data object from the request's response, to
>> the function that will iterate through the feed.
>> Using this technique you can drop hundreds of markers with no
>> additional code.
>>
>> Cheers
>> Pete
>>
>>
>> On May 28, 8:22 am, ron1776<[email protected]>  wrote:
>>
>>
>>> I can't find documentation on how to capture the reply from Web
>>> Service Request.
>>>
>>> We want to set the json return array to a variable so we can parse the
>>> map data we need to then build the cost to make a map.
>>>
>>> Ideas?
>>>
>>> - Ron
>>>
>>>
>>
>>
>
> --
>
> *************************************
> Ron Calzone
> Director, Missouri First, Inc.
> mailto:[email protected]
> Web URL http://www.mofirst.org
> *************************************
>
> --
> You received this message because you are subscribed to the Google Groups
> "Google Maps JavaScript API v3" group.
> To post to this group, send email to
> [email protected].
> To unsubscribe from this group, send email to
> [email protected]<google-maps-js-api-v3%[email protected]>
> .
> For more options, visit this group at
> http://groups.google.com/group/google-maps-js-api-v3?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google Maps JavaScript API v3" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-maps-js-api-v3?hl=en.

Reply via email to