我有以下代码用于下拉国家/地区。选择时,用新的国家代码替换cookie。:
<script type="text/javascript">
$('select-country').observe('change', function(event){
countryCode = $('select-country').value;
onChangeUrl = '<?php echo Mage::helper('switcher')->getCountryUrl(); ?>';
url = onChangeUrl.replace('%geocode%', countryCode);
setLocation(url);
event.stop();
})
</script>
在互联网上搜索我发现了一个非常好的项目http://jqvmap.com/。他们提供地图以及触发脚本以选择国家的可能性。建议的脚本代码是这样的:
jQuery(document).ready(function () {
jQuery('#vmap').vectorMap(
{
map: 'world_en',
backgroundColor: '#555555',
...etc.etc....
onRegionClick: function (element, code, region) {
var message = 'You clicked "'
+ region
+ '" which has the code: '
+ code.toUpperCase();
alert(message);
}
});
});
我的目标是将第一个脚本包含在第二个脚本中,所以当我点击一个区域时,脚本会用国家代码替换cookie,但我对javascript知之甚少。任何想法都会受到欢迎。
答案 0 :(得分:1)
在onRegionClick
上,您可以使用以下参数之一获取国家/地区代码:code
。
完全放在一起:
jQuery(document).ready(function () {
jQuery('#vmap').vectorMap(
{
map: 'world_en',
backgroundColor: '#555555',
...etc.etc....
onRegionClick: function (element, code, region) {
// here you already got the code
// use it to save it to your cookies
onChangeUrl = '<?php echo Mage::helper('switcher')->getCountryUrl(); ?>';
url = onChangeUrl.replace('%geocode%', code); // --> use code as the country code
setLocation(url);
event.stop();
}
});
});