功能:在商品列表上,点击放大镜,显示商品所有属性以及其价格,效果如下:

方法/步骤:

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 商品属性显示方法的更多相关文章

  1. ECSHOP商品属性调用到任意页面方法

    看到标题有的人觉得这个很复杂,其实这个没那么复杂,直接用下面的方法,就可以在ECSHOP的任意页面调用商品属性. 一)打开includes\lib_insert.php文件,在最后面增加一个函数: f ...

  2. Ecshop商品详情页显示当前会员等级价格

    会员登录状态下,在ECSHOP商品详情页的本店售价中显示当前登录会员对应的等级价格,在未登录状态下,则还默认显示原来的本店售价. 解决方法: 这个需要修改ECSHOP程序代码来实现. 打开文件 /in ...

  3. ecshop 属性表(attribute)商品属性表(goods_attr)货品表(prduct) 商品数量的联系

    ecshop 属性表(attribute)商品属性表(goods_attr)货品表(prduct) 商品数量的联系 一个商城的商品属性存放在属性表(attribute)里 ,每个商品对应的属性在goo ...

  4. ECSHOP 商品字段增加新字段的方法

    结合ecshop后台“商品编辑”.“商品录入”来谈谈如何给ecshop商品增加一个新字段,假设我们将这个新字段命名为 new_add 1.首先要修改数据表结构,给表 ecs_goods 增加新字段:n ...

  5. gvim如何显示html属性代码提示? vim 如何显示 javascript属性及方法提示?

    gvim如何显示html属性代码 可以在vim中 显示 html, css, js等的属性/方法 提示: 一是: 在 ~/.vim/after/syntax/ 目录中 安装 css-color.vim ...

  6. 在ecshop商品详情页显示供货商

    好久没写文章了,隐约记得前几天有人问到这个问题:[如何在ecshop商品详情页面显示该商品的供货商?] 今天有时间整理下,分享给大家. 注:以下修改适用于ecshop2.7.2,其他版本未做测试. 1 ...

  7. IE显示对象不支持此属性或方法 的解决方法

    用C# 编写的ActiveX控件, 调试时,在世界之窗浏览器里能正确显示,但是不能和JS交互,也没有传说中的错误信息框出现,查了很多文档,后来想问题是不是出在浏览器上,换在IE8里调试,点击交互按钮, ...

  8. ECSHOP 商品增加新字段的方法

    在ecshop二次开发工作中,经常碰到一些ECSHOP高级使用者问我,如何给商品增加一个新字段,来录入一些新的内容. 下面我们结合ecshop后台“商品编辑”.“商品录入”来谈谈如何给ecshop商品 ...

  9. (1)定义闭合图形抽象类ClosedFigure定义属性:1.形状;2.定义构造方法,给形状赋值;3.定义两个抽象方法:计算面积和计算周长;4.定义一个显示方法:显示图像形状,周长,面积;

    题目显示不全,完整题目描述: (1)定义闭合图形抽象类ClosedFigure定义属性:1.形状:2.定义构造方法,给形状赋值:3.定义两个抽象方法:计算面积和计算周长:4.定义一个显示方法:显示图像 ...

随机推荐

  1. 关于Python深浅拷贝

    拷贝: 说明:原则上就是把数据分离出来,复制其数据,并以后修改互不影响. 何来深浅拷贝的说法? 深浅拷贝的“深”和“浅”可以理解为从变量到硬盘上的物理存储介质之间的层次的多少. 下面用一个示例来解释浅 ...

  2. Linux知识要点大全(第三章)

    第三章  Linux基本操作 *主要内容 1:认识root用户 2:Linux下命令的写法 3:Linux关机和重启 4:忘记root密码的处理方法 5.  Linux下的目录结构 6.  查看信息 ...

  3. 关于 Docker 镜像的操作,看完这篇就够啦 !(下)

    紧接着上篇<关于 Docker 镜像的操作,看完这篇就够啦 !(上)>,奉上下篇 !!! 镜像作为 Docker 三大核心概念中最重要的一个关键词,它有很多操作,是您想学习容器技术不得不掌 ...

  4. .NET Core微服务之基于App.Metrics+InfluxDB+Grafana实现统一性能监控

    Tip: 此篇已加入.NET Core微服务基础系列文章索引 一.关于App.Metrics+InfluxDB+Grafana 1.1 App.Metrics App.Metrics是一款开源的支持. ...

  5. springboot~yml里的自定义配置

    主要介绍三种,字符串配置,数组配置和带默认值的配置 字符串配置 //yml setString: hello /** * 字符串. */ @Value("${setString}" ...

  6. RESTful API接口文档规范小坑

    希望给你3-5分钟的碎片化学习,可能是坐地铁.等公交,积少成多,水滴石穿,谢谢关注. 前后端分离的开发模式,假如使用的是基于RESTful API的七层通讯协议,在联调的时候,如何避免配合过程中出现问 ...

  7. .NET Core和.NET Standard有什么不同

        近日,微软发布了.NET Core 2.0,但是开发人员中间仍然存在一些疑惑,就是.NET Core..NET Standard.Xamarin和.NET Framework有什么不同. .N ...

  8. Yii2设计模式——单例模式

    应用举例 在Yii.php中: require __DIR__ . '/BaseYii.php'; // Yii框架的帮助类,提供框架基本的功能 class Yii extends \yii\Base ...

  9. 微信小程序 picker 中range-key的坑

    <picker class='fr' bindchange="onChangeBuild" range-key="{{'num'}}" value=&qu ...

  10. PHP的简单跳转提示的实现

    在PHP开发中,尤其是MVC框架或者项目中,会碰到很多跳转情况,比如:登录成功或失败后的跳转等等. 以下以MVC框架开发中为基础,示例讲解: 在基础控制器类中:Conrtoller.class.php ...