从Onepage结帐的送货地址部分获取“使用帐单地址”

时间:2013-03-12 14:11:07

标签: magento

我正在尝试将礼品选项消息显示在客户运送到与Onepage结帐流程中的帐单邮寄地址不同的地址时。我可以通过

从结算部分获取“运送到相同/不同的地址”
$this->getQuote()->getShippingAddress()->getData('same_as_billing')

它很有效。但是,如果客户将其作为送货方式,并返回以更改送货地址,则该字段似乎不会更新。我试过检查

$this->getQuote()->getShippingAddress()->getData('use_billing_address')

但该数据不存在。事实上,当我在additional.phtml中有这两行:

Mage::log("Same as billing: ".$this->getQuote()->getShippingAddress()->getData('same_as_billing'));
Mage::log("Use billing: ".$this->getQuote()->getShippingAddress()->getData('use_billing_address'));

当我从送货地址转到送货方式时,它不会触发。谁能给我一些方向呢?

1 个答案:

答案 0 :(得分:0)

我最终使用的是javascript函数而不是PHP,因为它不会重新加载页面以进入每个部分。

在template / giftmessage / inline.phtml中,我添加了以下内容:

    function _showHideGift() {
        var flag=document.getElementById('shipping:same_as_billing').checked;
        if(!flag){
            document.getElementById('gift-messages').style.display="block";
        }else{
            document.getElementById('gift-messages').style.display="none";
    }}

然后使用toogleVisilibityOnObjects调用调用CDATA内部块下方的函数。