1

我对此很陌生,但我试图将一些代码放在一起,但是我收到错误标记并且它似乎不起作用。我想要一些输入来帮助调试它。

我保存了一个名为“国家”的 cookie,其值为“AZ”。我想使用 javascript 提取此 cookie 并将其存储为变量,然后在我的谷歌地图页面中使用它。这是我的代码:

// Setup variable with blank value
var country_code ='';
// Use read_cookie function to pull "country" value from cookie
if (country_code) var country_code = read_cookie('country');
// Make sure its value is lower case (required)
country_code = country_code.toLowerCase();

然后再往下一点:

var input = document.getElementById('loc');
var options = { types: [], ComponentRestrictions({ 'country': country_code });};
var autocomplete = new google.maps.places.Autocomplete(input, options); 

第一个错误是我在“componentrestriction”行上有太多括号。这应该怎么做?看起来我正确地关闭了它们,我用 ({}); 包裹了组件​​限制;和带有 {} 的 var 选项;

编辑:这是我在 stackoverflow 上找到的读取 cookie 函数代码:

// Reading Cookie V0.1
function read_cookie(key){
    var result;
    return (result = new RegExp('(?:^|; )' + encodeURIComponent(key) + '=([^;]*)').exec(document.cookie)) ? (result[1]) : null;
}
4

2 回答 2

1

语句中有一个分号,并且在 ComponentRestrictions 之后有很多括号。

这样写:

var options = { 
       types: [], 
       ComponentRestrictions: { 
                          'country': country_code 
                              }
              };
于 2012-11-13T11:06:32.967 回答
1

对于组件限制:

var input = document.getElementById('loc');
var options = { types: [], componentRestrictions: { 'country': country_code } };
var autocomplete = new google.maps.places.Autocomplete(input, options);
于 2012-11-13T11:07:21.267 回答