最新バージョンのOpenCartを実行しているproduct.tplには、下部のjavascriptに次のコード行があります。
$('#cart-total').html(json['total']);
この行は、ページをリロードせずにカートの合計を更新したため、$('#cart-total').html(json['total']);
出力<span id="cart-total">6 item(s) - $693.50</span>
ただし、cart.tplモジュールとcart.php言語ファイルをカスタマイズして、カートの出力を少し異なる方法で表示し、次のように出力できるようにしました。
<span id="cart-total">
<div class="mini-cart-items">6 Items</div>
<div class="mini-cart-total">Your total is $693.50</div>
</span>
したがって、何らかの理由で$('#cart-total').html(json['total']);
、カートの合計を更新すると、カート内にある2つのdivが削除され、設定したフォーマットなしで情報が表示されます。
情報が削除されないようにJavaScriptを更新することは可能ですか?
コンテキストに必要な場合は、より多くのコードを提供できます。
EDTI:これは次の$('#cart-total').html(json['total']);
範囲内にあるjavascriptセクション全体です。
if (json['success']) {
$('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
$('.success').fadeIn('slow');
$('#cart-total').html(json['total']);
$('html, body').animate({ scrollTop: 0 }, 'slow');
}
現在のコード、以下に説明する編集:
if (json['success']) {
$('#notification').html('<div class="success" style="display: none;">' + json['success'] + '<img src="catalog/view/theme/default/image/close.png" alt="" class="close" /></div>');
$('.success').fadeIn('slow');
console.log(json['total']);
var output = $(json['total']).text().split('-');
$('.mini-cart-items').html(output[0]);
$('.mini-cart-total').html('Your total is ' + output[1]);
$('html, body').animate({ scrollTop: 0 }, 'slow');
}