您现在的位置是:首页 > cms教程 > Ecshop商城教程Ecshop商城教程
通过AJAX方式动态更新ecshop购物车页面的商品数量的方法
张准辰2023-12-07Ecshop商城教程已有人查阅
导读每次用户进入ecshop购物流程的时候当需要更改购物车里的商品数量的时候必须要手动点击更新按钮
每次用户进入ecshop购物流程的时候当需要更改购物车里的商品数量的时候必须要手动点击更新按钮,这是非常糟糕的用户体验,我们有必要去改进这一点。
以下是通过AJAX方式来动态更新ECShop购物车页面商品数量的解决办法 一、前端页面部分(flow.dwt) 在商品数量的input框添加对应的js函数
以下是通过AJAX方式来动态更新ECShop购物车页面商品数量的解决办法 一、前端页面部分(flow.dwt) 在商品数量的input框添加对应的js函数
<INPUT onblur=”changePrice(document.getElementById (‘goods_number_{$goods.rec_id}’).value,{$goods.rec_id})” name=”goods_number [{$goods.rec_id}]” id=”goods_number_{$goods.rec_id}” value=”{$goods.goods_number}” id=”ECS_FORMBUY”> 在文件最后添加一段js <script type=”text/javascript”> function changePrice(number,rec_id) { var attr = getSelectedAttributes(document.forms['ECS_FORMBUY']); var qty = document.forms['ECS_FORMBUY'].elements['number'].value; Ajax.call(‘flow.php’, ‘step=update_group_ cart&rec_id=’ + rec_id +’&number=’ + number, changePriceResponse, ‘GET’, ‘JSON’); } function changePriceResponse(res) { if (res.error > 0) { document.getElementById(‘sysmsg_error’).innerHTML = res.content; document.all.sysmsg_error.style.display=”; } else { if(document.all.sysmsg_error.style.display==”) { document.all.sysmsg_error.style.display=’none’; } document.getElementById(‘subtotal_’+res.rec_id).innerHTML = res.subtotal; document.getElementById(‘cart_amount’).innerHTML = res.cart_amount; } } </script> 二、在flow.php文件中插入对应的处理代码: elseif($_REQUEST['step'] == ‘update_group_cart’) { include_once(‘includes/cls_json.php’); $json = new JSON(); $result = array(‘error’ => ”, ‘content’ => ”); $rec_id = $_GET['rec_id']; $number = $_GET['number']; $group_buy = group_buy_info($_SESSION['extension_id'], $number); if(!is_numeric($number)) { $result['error'] = ’1′; $result['content'] =’请输入合法数量’; die($json->encode($result)); } if ($group_buy['restrict_amount'] > 0 && $number > ($group_buy['restrict_amount'] – $group_buy['valid_goods'])) { $result['error'] = ’1′; $restrict_amount = $group_buy['restrict_amount'] – $group_buy['valid_goods']; $result['content'] =’您最多可买’.$restrict_amount.’件’; die($json->encode($result)); } $sql = “UPDATE ” . $GLOBALS['ecs']->table(‘cart’) . ” SET goods_number = ‘$number’ WHERE rec_id = $rec_id”; $GLOBALS['db']->query($sql); $subtotal = $GLOBALS['db']->getONE(“select goods_price * goods_number AS subtotal from “.$GLOBALS['ecs']->table(‘cart’).” where rec_id = $rec_id”); $cart_amount = cart_amount(”,$_SESSION['flow_type']); $result['subtotal'] = price_format($subtotal, false); $result['cart_amount'] = price_format($cart_amount, false); $result['rec_id'] = $rec_id; die($json->encode($result)); } 还等什么?马上清空echsop的缓存刷新页面看看效果吧。
本文标签:
很赞哦! ()
相关教程
图文教程
ecshop商品批量购买批量添加商品到购物车的方法
默认的ecshop中只能单件点击“添加到购物车”,没有办法批量添加,其实很简单,我们可以用函数addToCart()来实现。下面我们就来讲一下具体的操作方法。
ecshop商品加入购物车仿淘宝效果代码示例
ECSHOP商品加入购物车仿淘宝效果。下来我把我的做法贴出来网友们做参考有不对的地方多多指正。
ecshop商品详细页仿淘宝AJAX效果的实现方法
用过淘宝的朋友都知道淘宝购买商品的AJAX效果,此方法通过预先隐藏层让ECSHOP模板也能达到类似效果,有需要的朋友可以照着做修改goods.dwt页面的购买按钮如下
ecshop编辑器中文名图片不能上传解决办法
在后台上传商品图片的时候,如果你选择一个中文名称的图片,那么上传后会产生乱码,导致图片显示不出来。下面说一种解决办法
相关源码
-
(自适应)品牌策划高端设计公司网站pbootcms模板免费下载本模板为品牌策划与设计公司打造,基于PbootCMS内核开发,充分考虑了创意设计行业的视觉展示需求。模板设计风格现代简约,布局合理清晰,呈现设计作品与专业服务,帮助设计公司展示创意实力并吸引潜在客户。查看源码 -
(PC+WAP)化工材料企业环保能源绿色营销型pbootcms模板源码下载本模板为化工材料及环保能源企业设计,采用PbootCMS开发,可展示各类化工产品、环保技术及能源解决方案。查看源码 -
(自适应)中英文双语外贸扬声器音响喇叭话筒网站模板免费下载为音响设备外贸企业设计的中英文双语网站模板,基于PbootCMS内核开发。适配扬声器系统、音频设备等产品的国际化展示需求查看源码 -
(自适应)APP应用软件落地页单页推广页网站模板下载基于PbootCMS内核开发的响应式单页模板,为企业产品展示、服务推广等应用场景设计。通过简洁直观的视觉布局与高效的技术架构,帮助用户快速构建专业级落地页面,实现移动端与PC端数据实时同步展示。查看源码 -
响应式高端家居家具装修类pbootcms模板网站源码家居装修、空间设计企业打造的营销型网站解决方案,基于PbootCMS内核深度开发。采用前沿响应式架构,适配手机端与PC端浏览体验查看源码 -
(自适应响应式)装修装潢设计公司网站源码下载本模板为装修设计企业打造,采用PbootCMS内核开发,整体设计突出空间美学与功能性结合。首页采用大图轮播展示工程案例,服务项目模块支持三维效果展示,呈现装修设计企业的专业形象与技术实力。查看源码
| 分享笔记 (共有 篇笔记) |
