0

我试图通过将其连接到谷歌地图位置自动完成 api,在用户键入位置框时自动建议位置名称(使用 jquery 自动完成)。但是ajax响应给我一个错误。

但是,当我直接在浏览器中复制并粘贴相同的 api url 时,它会将结果返回给我。

我究竟做错了什么?

API 网址:
https://maps.googleapis.com/maps/api/place/autocomplete/json?input=cola&sensor=false&key=[我的钥匙]

我的萤火虫截图

https://docs.google.com/file/d/0B7ZMqGCQDtvkcEhsUTVQWTJhWXc/edit?usp=sharing

jQuery 代码

jQuery("#my_location").autocomplete(
{
    source: function( request, response ) 
    {
        jQuery.ajax(
        {
            url: "https://maps.googleapis.com/maps/api/place/autocomplete/json",

            type: "GET",


            data: {
                        input: request.term, //jQuery("#my_location").val(),
                        sensor: "false",
                        key: [my key]
            },

            success: function( data ) 
            {
                response( $.map( data.predictions, function( item ) 
                {
                    return {
                        label: item.description, //item.name + (item.adminName1 ? ", " + item.adminName1 : "") + ", " + item.countryName,
                        value: item.description
                    }
                }));

                //console.log(data);

            },

            error: function(MLHttpRequest, textStatus, errorThrown) 
            {
                console.log("Error: " + errorThrown)
            }

        });
    },

    minLength: 2

}); // autocomplete
4

1 回答 1

0

我认为这是因为 CORS。原谅一个非解决方案的答案,但也许它作为指导很有用。

于 2013-08-09T19:42:38.977 回答