通过AJAX方式动态更新ecshop购物车页面的商品数量 - 汇站网

通过AJAX方式动态更新ecshop购物车页面的商品数量

2021-09-07 0 675

每次用户进入 ecshop 购物流程当需要更改购物车的数量必须手动点击更新按钮,这是非常糟糕的用户体验,我们有必要去改善它。
下面是通过 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 的缓存刷新页面看看效果吧。

转载请注明:汇站网 » 通过 AJAX 方式动态更新 ecshop 购物车页面的商品数量

收藏 (0)

微信扫一扫

支付宝扫一扫

点赞 (0)

感谢您的来访,获取更多精彩资源请收藏本站。

本站声明

本资源仅用于个人学习和研究使用,禁止用于任何商业环境!

 1.  本网站名称:汇站网
 2.  本站永久网址:https://www.huizhanii.com/
 3.  本站所有资源来源于网友投稿和高价购买,所有资源仅对编程人员及源代码爱好者开放下载做参考和研究及学习,本站不提供任何技术服务!
 4.  未经原版权作者许可,禁止用于任何商业环境,任何人不得擅作它用,下载者不得用于违反国家法律,否则发生的一切法律后果自行承担!
 5.  为尊重作者版权,请在下载24小时内删除!请购买原版授权作品,支持你喜欢的作者,谢谢!
 6.  若资源侵犯了您的合法权益, 请持您的版权证书和相关原作品信息来信通知我们请来信     通知我们我们会及时删除,给您带来的不便,我们深表歉意!
 7.  如下载链接失效、广告或者压缩包问题请联系站长处理!
 8.  如果你也有好源码或者教程,可以发布到网站,分享有金币奖励和额外收入!
 9.  本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
 10.  因源码具有可复制性,一经赞助 ,不得以任何形式退款。
 11.  更多详情请点击查看

汇站网 ECSHOP 通过AJAX方式动态更新ecshop购物车页面的商品数量 https://www.huizhanii.com/15954.html

汇站

站长资源下载中心-找源码上汇站

常见问题
  • 如果付款后没有弹出下载页面,多刷新几下,有问题联系客服!
查看详情
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。
查看详情

相关文章

发表评论
暂无评论
  随机评论 表情开关按钮图片
表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情表情
登录后评论
联系官方客服

为您解决烦忧 - 24小时在线 专业服务

(汇站网)一个专注站长资源的平台网站,提供最新的网站模板和整站源码,内容包含各类精品网页模板,企业网站模板,网站模板,DIV+CSS模板,织梦模板,帝国cms模板,discuz模板,wordpress模板,个人博客论坛模板,上千种免费网页模板下载尽在汇站网.找源码上汇站.huizhanii.com