2012-10-29 157 views
1

我已添加功能付款方法步驟,這是與運送地址相關,如果送貨地址更改,然後付款方式HTML內容必須重新加載。我嘗試將JavaScript添加到「結算和發送」步驟,但我的後端要求發貨地址保存起作用。因此,如果我在onclick =「shipping.save();」之後添加自己的JavaScript在shipping.phtml中,它永遠不會被調用。刷新Magento結帳步驟

是否有辦法在每次查看步驟時刷新步驟HTML?

回答

2

是的,它是可能的,但不是純JS(沒有AJAX回調可通過一個單一的點擊重新加載步驟)

你需要的OnepageControllerMage_Checkout超載。在這個類中,你會看到每一步saveAction都包含刷新/顯示下一步的邏輯。

例如,在Mage_Checkout_OnepageControllersaveShippingAction()你可以看到:

[...] 
if (!isset($result['error'])) { 
    $result['goto_section'] = 'shipping_method'; 
    $result['update_section'] = array(
     'name' => 'shipping-method', 
     'html' => $this->_getShippingMethodsHtml() 
    ); 
} 
[...] 

的部分update_section是一個告訴Magento的要強制刷新的步驟。

您應該能夠適應您的需求。

+1

HI我有一個與上述相關的問題,但您的解決方案已經給我一個方向來跟蹤我的項目中的問題,並與我能夠做到這一點。謝謝 –