zen cartのショッピングカートで数量変更後、更新ボタンを
押すことなしに動的に金額を変更するカスタマイズについて
メモしておきます。

なお、zen cartのヴァージョンは1.3.0.2です。
メジャーが 1 、マイナーが 3.0.2-l10n-jp-6 です。
php は 5.3.2です。

***template***includesmodulespagesshopping_cartheader_php.php
124行目
$quantityField = zen_draw_input_field(‘cart_quantity[]’, $products[$i][‘quantity’], ‘size=”4″‘);

$quantityField = zen_draw_input_field(‘cart_quantity[]’, $products[$i][‘quantity’], ‘size=”4″ onchange=”cart_quantity_update(value)”‘);
に変更

***template***includesmodulespagesshopping_cartjscript_main.php
の末尾に以下のjavascriptを追加し、アップロード

<script language=”javascript” type=”text/javascript”><!–
function cart_quantity_update(value) {
if (value.match(/[^0-9]/g) || parseInt(value, 10) + “” != value) {
return false;
} else {
document.getElementsByName(“cart_quantity”)[0].submit();
}
}
//–></script>

最後のサブミットのところは、古いブラウザだと動かないかもしれません。
私が試したところでは、FireFox3、FireFox5、Google Chromeの最新と、IE 8、IE 6だと動作
しました。

このエントリーをはてなブックマークに追加


カテゴリ: zen cart.
最終更新日: 6月 22, 2014

コメントを残して頂けると嬉しいです