2013-04-25 59 views
1

我在我的服務器上安裝了Magento 1.7.0.0。我面臨一個關於可選郵政編碼國家的問題。我的意思是我想讓愛爾蘭的郵政編碼可選,因爲我已經在管理面板的可選國家列表中選擇了愛爾蘭(系統>配置>常規)。但是,當我訪問結賬頁面並選擇愛爾蘭時,它會從郵政編碼字段中刪除星號,但是當我點擊繼續時,它會顯示一個警告框(「郵政編碼是必需的值」)。爲什麼?
請幫幫我!在此先感謝...在Magento中爲愛爾蘭製作郵政編碼

+0

你會比較你的主題實現和基本主題。前端相關代碼是帶有shippingRegionUpdater的JavaScript代碼。照顧所有相關的標籤和輸入。 – 2014-01-10 10:56:47

回答

0

我認爲是因爲郵政編碼輸入有html類required-entry如果您編輯模板並退出類js不會檢查該輸入,並且警報不會被觸發。但請記住使用條件或東西來退出這個類只爲愛爾蘭。

0

短期解決方案

添加到您的.document(ready)。你有country_idbilling[country_id]等注意*需要

function require_postcode_check(){ 
    jQuery('select[name*=country_id]').each(function(){ 
     jQuery(this).closest('form').find('input[name*=postcode]').toggleClass('required-entry', jQuery(this).val() != 'IE'); 
    }); 
} 
require_postcode_check(); // execute on document ready 
jQuery('select[name*=country_id]').on('change', function(){ 
    require_postcode_check(); // execute on country change 
}); 

長期的解決方案

一個長期的解決辦法是爲每個<option>一類,需要一個郵政編碼:

<option value="UK" class="postcode-required">United Kingdom</option> 
<option value="IE" class="">Ireland</option> 

然後如果更改了<select>,請檢查選定的選項hasClass('postcode-required')