网站地图    收藏   

主页 > 后端 > ecshop教程 >

ecshop商品详情页面显示关联属性库存 - ecshop

来源:自学PHP网    时间:2014-11-28 23:31 作者: 阅读:

[导读] 使用ecshop模板搭建网站的时候,绝大多数网站都是需要使用商品属性这个功能的,比如服装商城,肯定需要使用到颜色、尺寸等属性,而ecshop商品详情页面默认展示的库存是商品的总库存,那我...

ecshop商品详情页面显示关联属性库存

使用ecshop模板搭建网站的时候,绝大多数网站都是需要使用商品属性这个功能的,比如服装商城,肯定需要使用到颜色、尺寸等属性,而ecshop商品详情页面默认展示的库存是商品的总库存,那我们想让这个库存显示为当前选中的属性的库存,并且当选择其他属性时,库存变为对应属性的库存,仿淘宝,这个怎么来实现呢?按照下面修改对应的文件,就可以轻松实现这个效果.

goods.dwt页面修改:

  1. <!-- {foreach from=$spec.values item=value key=key} --> 
  2.  
  3. <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> 
  4.  
  5. <!-- {/foreach} --> 

在显示详细信息合适的地方加:

<font style=" color:#CCCCCC;">(库存:<font id="shows_number">{$goods.goods_number} {$goods.measure_unit}</font>)</font>

在goods.dwt加js代码:

  1. function changeAtt(t,a,goods_id) { 
  2. t.lastChild.checked='checked'
  3. for (var i = 0; i<t.parentNode.childNodes.length;i++) { 
  4. if (t.parentNode.childNodes[i].className == 'cattsel') { 
  5. t.parentNode.childNodes[i].className = ''
  6.  
  7. t.className = "cattsel"
  8. var formBuy = document.forms['ECS_FORMBUY']; 
  9. spec_arr = getSelectedAttributes(formBuy); 
  10. Ajax.call('goods.php?act=get_products_info''id=' + spec_arr+ '&goods_id=' + goods_id, shows_number, 'GET''JSON'); 
  11. changePrice(); 
  12. function shows_number(result) 
  13. if(result.product_number !=undefined) 
  14. $('shows_number').innerHTML = result.product_number+'件'
  15. else 
  16. $('shows_number').innerHTML = '未设置' 

打开goods.php添加70行左右吧

  1. if (!emptyempty($_REQUEST['act']) && $_REQUEST['act'] == 'get_products_info'
  2. include('includes/cls_json.php'); 
  3.  
  4. $json = new JSON; 
  5. // $res = array('err_msg' => '', 'result' => '', 'qty' => 1); 
  6. //开源软件:phpfensi.com 
  7. $spce_id = $_GET['id']; 
  8. $goods_id = $_GET['goods_id']; 
  9. $row = get_products_info($goods_id,explode(",",$spce_id)); 
  10. //$res = array('err_msg'=>$goods_id,'id'=>$spce_id); 
  11. die($json->encode($row)); 
  12.  
  13. }

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论