2017-05-15 17 views
0

スクリーンショットに見られるように配送方法を変更しますが、Magentoは計算された配送費用の合計を計算して内部ページを更新しません。バージョン1.9。ここではスクリーンショットを見ることができます.Magento ver。 1.9.2.4Magentoは配送方法のラジオボタンを変更する際に送料がかかります

1つの出荷方法からラジオボタンを変更した場合、onestepcheckoutは計算されたコストで内側ページを更新しません。 enter image description here

JavaScriptを使用して内側のページを更新するにはどうすればよいですか?

おかげ

答えて

0

available.phtmlファイルに以下のコードを追加します

<?php if (!($_shippingRateGroups)): ?> 
    <strong><?php echo Mage::helper('oscheckout')->__('Sorry, no quotes are available for this order at this time.') ?></strong> 
<?php else: ?> 
    <dl class="shipment-methods"> 

     <?php $methodcount = count($_shippingRateGroups); $check_default = 1; foreach ($_shippingRateGroups as $code => $_rates): ?> 
      <dd><?php echo $this->getCarrierName($code) ?></dd> 
      <?php foreach ($_rates as $_rate): ?> 
       <dt style="margin-bottom: 5px;"> 
        <?php if ($_rate->getErrorMessage()): ?> 
         <ul class="messages"><li class="error-msg"><ul><li><?php echo $_rate->getErrorMessage() ?></li></ul></li></ul> 
        <?php else: ?> 
         <input <?php echo $check_default == 1 ? 'checked="checked"':'' ?> name="shipping_method" type="radio" class="validate-one-required-by-name" value="<?php echo $_rate->getCode() ?>" id="s_method_<?php echo $_rate->getCode() ?>" /> 
         <label for="s_method_<?php echo $_rate->getCode() ?>"> <?php echo $_rate->getMethodTitle() ?> 
          <strong> 
           <?php $_excl = $this->getShippingPrice($_rate->getPrice(), $this->helper('tax')->displayShippingPriceIncludingTax()); ?> 
           <?php $_incl = $this->getShippingPrice($_rate->getPrice(), true); ?> 

           <?php echo $_excl; ?> 
           <?php if ($this->helper('tax')->displayShippingBothPrices() && $_incl != $_excl): ?> 
           (<?php echo Mage::helper('oscheckout')->__('Incl. Tax'); ?> <?php echo $_incl; ?>) 
           <?php endif; ?> 
          </strong> 
         </label> 
        <?php endif ?> 
       </dt> 
      <?php endforeach; $check_default++; ?> 
     <?php endforeach; ?> 
    </dl> 
<?php endif; 
?> 

が同じファイルにこのスクリプトを追加

<script type="text/javascript"> 
    <?php if($methodcount >= 1): ?> 
    document.observe('dom:loaded', function(){ 
     shipping.loadReview(); 
     var payment_methods = $('ajax-payment-methods'); 
     //payment_methods.update('<div class="ajax-load">&nbsp;</div>'); 
     payment.reloadPaymentBlock(); 
//  reloadPaymethod(); 
    }); 
    <?php endif; ?> 
    $$('dl.shipment-methods input').invoke('observe', 'click', function() { 
     shipping.loadReview(); 
     var payment_methods = $('ajax-payment-methods'); 
     //payment_methods.update('<div class="ajax-load">&nbsp;</div>'); 
     payment.reloadPaymentBlock(); 
//  reloadPaymethod(); 
    }); 

</script> 
関連する問題