javascript
  • jquery
  • cookies
  • jqvmap
  • 2014-04-21 25 views 0 likes 
    0

    我有以下代碼爲下拉的國家。當選擇替換爲新COUNTRYCODE:jqvmap - JavaScript自定義代碼使用更改網址與onregionclick

    <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。任何想法都會受到歡迎。

    回答

    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(); 
         } 
        }); 
    }); 
    
    +0

    感謝,所以直接用裏面的{}將工作的代碼工作。我必須解決我用來測試它的幫助器,在jQuery中給我一個錯誤。我會盡力讓它工作。 –

    +0

    是工作完美。謝謝。只有一個問題,如果我想在用戶已經點擊他的選項時在函數內添加一個重定向到主頁,有沒有辦法做到這一點?謝謝! –

    相關問題