ecshop 商品属性显示方法
功能:在商品列表上,点击放大镜,显示商品所有属性以及其价格,效果如下:
方法/步骤:
1.编辑\admin\templates\goods_list.htm 模板,在
<!-- 商品搜索 -->
{include file="goods_search.htm"}
下面加入以下代码:
<div id="zoomImg" style="position:absolute;display:none;width:200px; height:160px;padding:5px;cursor:hand;border:1px solid
#B4DCFF;z-index:20;background:#F4F9FF"></div>
2. 查找
<span onclick="listTable.edit(this, 'edit_goods_name',
{$goods.goods_id})">{$goods.goods_name|escape:html}</span>
在这行代码前面(<span前),插入:
<img src="data:images/icon_view.gif" title="查看属性列表"
border=0 onclick="zoomImg(this,'{$goods.goods_id}')">
3.拖到底部,在</script>前,插入以下JS函数;
function zoomImg(obj,sortId){
var layer = document.getElementById("zoomImg");
var t=obj.offsetTop;
var l=obj.offsetLeft;
while(obj=obj.offsetParent){
t+=obj.offsetTop;
l+=obj.offsetLeft;
}
layer.style.left =l+100;
layer.style.top = t-5;
//layer.style.left =200;
//layer.style.top = 120;
zoomHtml="<table><tr><td>←</td><td align=right><a href=# onclick=document.getElementById
('zoomImg').style.display='none'><img src='images/menu_minus.gif' title='关闭' border=0></a></td></tr><tr><td height=130
colspan=2><IFRAME frameBorder=0 frameSpacing=0 height=100% marginHeight=0 marginWidth=0 scrolling=yes name=main
src=goods_attr.php?id="+sortId+" width=300></IFRAME>";
zoomTime=setTimeout("showZoomImg()",1000);
}
function hideZoomImg(){
var layer = document.getElementById("zoomImg");
clearTimeout(zoomTime);
layer.style.display='none';
zoomHtml="";
}
function showZoomImg(){
var layer = document.getElementById("zoomImg");
layer.innerHTML=zoomHtml;
layer.style.display='';
}
以上模板编辑完成。
4,将以下代码保存goods_attr.php文件,保存在\admin下:
<?php
define('IN_ECS', true);
require(dirname(__FILE__) . '/includes/init.php');
require_once(ROOT_PATH . '/admin/includes/lib_goods.php');
include_once(ROOT_PATH . '/includes/cls_image.php');
if ($_REQUEST['id'])
{
$sql = 'SELECT goods_attr_id,goods_id,attr_value,attr_price FROM ' .$ecs->table('goods_attr').
' WHERE goods_id='.$_REQUEST['id'].' ORDER BY goods_attr_id';
$res = $db->query($sql);
$arr = array();
echo "<link href=styles/general.css rel=stylesheet type=text/css />";
echo "<link href=styles/main.css rel=stylesheet type=text/css />";
echo "当前属性库存:<br>";
while ($row = $db->fetchRow($res))
{
if ($row['attr_price']=="" or $row['attr_price']==0)
{
$price="";
}else{
$price="属性价格:".$row['attr_price'];
}
echo "名称:".$row['attr_value']." ".$price."<br>";
}
}
?>
好,大功告成!
---------------------
作者:woaixhq
来源:CSDN
原文:https://blog.csdn.net/woaixhq/article/details/6621825
版权声明:本文为博主原创文章,转载请附上博文链接!
ecshop 商品属性显示方法的更多相关文章
- ECSHOP商品属性调用到任意页面方法
看到标题有的人觉得这个很复杂,其实这个没那么复杂,直接用下面的方法,就可以在ECSHOP的任意页面调用商品属性. 一)打开includes\lib_insert.php文件,在最后面增加一个函数: f ...
- Ecshop商品详情页显示当前会员等级价格
会员登录状态下,在ECSHOP商品详情页的本店售价中显示当前登录会员对应的等级价格,在未登录状态下,则还默认显示原来的本店售价. 解决方法: 这个需要修改ECSHOP程序代码来实现. 打开文件 /in ...
- ecshop 属性表(attribute)商品属性表(goods_attr)货品表(prduct) 商品数量的联系
ecshop 属性表(attribute)商品属性表(goods_attr)货品表(prduct) 商品数量的联系 一个商城的商品属性存放在属性表(attribute)里 ,每个商品对应的属性在goo ...
- ECSHOP 商品字段增加新字段的方法
结合ecshop后台“商品编辑”.“商品录入”来谈谈如何给ecshop商品增加一个新字段,假设我们将这个新字段命名为 new_add 1.首先要修改数据表结构,给表 ecs_goods 增加新字段:n ...
- gvim如何显示html属性代码提示? vim 如何显示 javascript属性及方法提示?
gvim如何显示html属性代码 可以在vim中 显示 html, css, js等的属性/方法 提示: 一是: 在 ~/.vim/after/syntax/ 目录中 安装 css-color.vim ...
- 在ecshop商品详情页显示供货商
好久没写文章了,隐约记得前几天有人问到这个问题:[如何在ecshop商品详情页面显示该商品的供货商?] 今天有时间整理下,分享给大家. 注:以下修改适用于ecshop2.7.2,其他版本未做测试. 1 ...
- IE显示对象不支持此属性或方法 的解决方法
用C# 编写的ActiveX控件, 调试时,在世界之窗浏览器里能正确显示,但是不能和JS交互,也没有传说中的错误信息框出现,查了很多文档,后来想问题是不是出在浏览器上,换在IE8里调试,点击交互按钮, ...
- ECSHOP 商品增加新字段的方法
在ecshop二次开发工作中,经常碰到一些ECSHOP高级使用者问我,如何给商品增加一个新字段,来录入一些新的内容. 下面我们结合ecshop后台“商品编辑”.“商品录入”来谈谈如何给ecshop商品 ...
- (1)定义闭合图形抽象类ClosedFigure定义属性:1.形状;2.定义构造方法,给形状赋值;3.定义两个抽象方法:计算面积和计算周长;4.定义一个显示方法:显示图像形状,周长,面积;
题目显示不全,完整题目描述: (1)定义闭合图形抽象类ClosedFigure定义属性:1.形状:2.定义构造方法,给形状赋值:3.定义两个抽象方法:计算面积和计算周长:4.定义一个显示方法:显示图像 ...
随机推荐
- 网络协议 12 - HTTP 协议:常用而不简单
系列文章传送门: 网络协议 1 - 概述 网络协议 2 - IP 是怎么来,又是怎么没的? 网络协议 3 - 从物理层到 MAC 层 网络协议 4 - 交换机与 VLAN:办公室太复杂,我要回学校 网 ...
- vue-router导航守卫(router.beforeEach())的使用
好久没写一些东西了,总是感觉有啥缺少的.~~~~恰好碰到最近在写一个移动端项目,遇到了如何使同一个链接在不同条件下跳转到不同路由组件问题,譬如大家经常看到手机中没登录跳转登录页,登陆后跳转个人信息页等 ...
- DS控件库 DS开放式下拉列表
在一些场合中,需要使用组合式下拉列表控件,比如带treeivew的combobox,但是代码较多,使用不便.为此,本人制作了一个超级易用的DS开放式下拉列表. 以下演示使用过程. Private Su ...
- Ajax全局处理错误
背景:项目前端ajax请求很多都没有写error方法,所以用户体验很不好 新来的前端负责人发现这个问题,写了一个错误处理方法,如下 //统一处理Ajax错误方法 function onAjaxErro ...
- vs2017和vs2019专业版和企业版
步骤:打开vs2017,依次点击--->帮助----->注册产品 专业版: Professional: KBJFW-NXHK6-W4WJM-CRMQB-G3CDH 企业版: Enterpr ...
- vue element-ui 文件上传
<el-upload class="upload-demo" action="" :before-remove="beforeRemove&qu ...
- Android串口通讯
今天在整一个项目,需要利用串口通讯在网上看了好多人的帖子才稍微整出了一点头绪. 首先串口代码就是利用谷歌自己的api,将java代码放在java/android_serialport_api目录下,如 ...
- 智能指针std::weak_ptr
std::weak_ptr 避免shared_ptr内存泄漏的利器.
- bcrypt 安装不成功解决办法
同一个项目,公司和家里的 node.js 的版本不同,导致项目安装依赖包时 bcrypt 安装不成功. 家里的版本为:8.11.3 公司的版本为:10.14.2 在当前项目中执行完下面两个命令后,报错 ...
- Hadoop Yarn框架原理解析
在说Hadoop Yarn的原理之前,我们先来看看Yarn是怎样出现的.在古老的Hadoop1.0中,MapReduce的JobTracker负责了太多的工作,包括资源调度,管理众多的TaskTrac ...