期間手動調用setAddress()我已經添加了郵政信箱過濾每本簡短的教程:Magento的 - opcheckout.js - 結帳
從本質上講,這只是叫我的控制器,確實在一個的preg_match 'street1'和'street2'字段,並在輸入郵政信箱地址時發出警報,否則它只會調用shipping.save()並進入下一步。
問題是,如果用戶保存了郵政信箱地址(這不是默認地址),當您選擇備用地址(使用郵政信箱)時,隱藏表單字段不會更新選定的地址,並且PO Box驗證不會被調用。
在試圖解決這個問題,我燒shipping.setAddress(值)時,選擇元素被改變:
jQuery("#shipping-address-select").change(function(){
var value = jQuery("#shipping-address-select option:selected").val();
shipping.setAddress(value);
});
可正常工作幾乎完全,它的地址設置爲我所期望的,一切都很美好,然而,這裏發生的一個小故障是,在調用shipping.setAddress(value)(執行ajax調用)之後,select元素會在我選擇實際地址後自動顯示「New Address」選項。這純粹是一個視覺問題,因爲使用了正確的地址,但顯示「新地址」會讓用戶感到困惑。
有沒有一種方法可以在不修改opcheckout.js中的任何內容(其中Shipping類和setAddress()位所在的位置)的情況下進行修正?
- 編輯 - 這是Magento專業 - 1.11.1.0