views:

85

answers:

1

I am using jQuery to make an AJAX call to a ruby method in my controller. The javascript looks something like this:

    var latLongJSON =
    {
        "address": [
        {"lat" : 50,
        "long" : 50} ]
    };

    var returnedAddresses;

    $.ajax({
        type: "GET",
        data: latLongJSON,
        url: "map/getaddresses",
        success: function(data) {
            returnedAddresses = JSON.parse(data);
        }
    });

Then in my 'getaddresses' method, my parameter coming through looks like:

Parameters: {"address"=>"[object Object]"}

I'm not sure what to do with this. I'm fairly new to Ruby, and I'm not sure if I need to convert this to something else, or what. Ideally I want to be able to pass in multiple sets of lat/long in the 'address' array, then be able to iterate over those in my Ruby code.

+1  A: 

Try out jQuery 1.4.2, it as much better handling of passing objects back to the server.

The param function was rewritten in 1.4.* to handle padding back deep arrays and object.

PetersenDidIt
Looks like that helped quite a bit, but I'm still not sure how to handle the parameters:Parameters: {"address"=>{"0"=>{"lat"=>"50", "long"=>"50"}}}Do I need to convert that into a Hash, or how else would I iterate over it?
Zachary
Nevermind - that was my Ruby newbieness shining through. That is in a hashmap. Thanks for the suggestion.
Zachary