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="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
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自www.cnblogs.com/qfxn726/p/9935200.html