效果以下:javascript
要開模板文件 goods.dwt 把選擇尺碼跟顏色的代碼替換成以下,(不一樣模板代碼可能不同,對照去替換)php
<!-- {foreach from=$spec.values item=value key=key} --> <a {if $key eq 0}class="cattsel"{/if} onclick="changeAtt(this,{$value.id},{$goods.goods_id})" href="javascript:;" name="{$value.id}" title="[{if $value.price gt 0}{$lang.plus}{elseif $value.price lt 0}{$lang.minus}{/if} {$value.format_price|abs}]">{$value.label}<input style="display:none" id="spec_value_{$value.id}" type="radio" name="spec_{$spec_key}" value="{$value.id}" {if $key eq 0}checked{/if} /></a> <!-- {/foreach} -->
在要顯視庫存的地方放置如下代碼html
<font style=" color:#CCCCCC;">(庫存:<font id="shows_number">{$goods.goods_number} {$goods.measure_unit}</font>)</font>
最後在JS代碼裏面添加如下JS 代碼java
function changeAtt(t,a,goods_id) { t.lastChild.checked='checked'; for (var i = 0; i<t.parentNode.childNodes.length;i++) { if (t.parentNode.childNodes[i].className == 'cattsel') { t.parentNode.childNodes[i].className = ''; } } t.className = "cattsel"; var formBuy = document.forms['ECS_FORMBUY']; spec_arr = getSelectedAttributes(formBuy); Ajax.call('goods.php?act=get_products_info', 'id=' + spec_arr+ '&goods_id=' + goods_id, shows_number, 'GET', 'JSON'); changePrice(); } function shows_number(result) { if(result.product_number !=undefined) { $('shows_number').innerHTML = result.product_number+'件'; } else { $('shows_number').innerHTML = '未設置' } }
再打開程序文件 goods.php 在70行左右添加代碼json
if (!empty($_REQUEST['act']) && $_REQUEST['act'] == 'get_products_info') { include('includes/cls_json.php'); $json = new JSON; // $res = array('err_msg' => '', 'result' => '', 'qty' => 1); $spce_id = $_GET['id']; $goods_id = $_GET['goods_id']; $row = get_products_info($goods_id,explode(",",$spce_id)); //$res = array('err_msg'=>$goods_id,'id'=>$spce_id); die($json->encode($row)); }
如今就能夠了,到後臺清除下緩存試試。緩存
若是想實現選擇打勾的效果,參閱這篇 http://www.cnblogs.com/wangblognet/archive/2013/04/11/3014112.htmlthis