您现在的位置是:首页 > 教程 > ecshop商城教程ecshop商城教程
商城ecshop搜索结果滑动下拉显示相关商品的实现方法
雪柳2023-11-14 23:50:28ecshop商城教程已有人查阅
导读所需要的样式我们可以 到style.css里:以下代码需要加到输入框普遍 比如page_header.lbi;在商品少的情况下 我们之间查询 如果多了,ECSHOP模板屋建议修改程序
所需要的样式我们可以 到style.css里:
/*搜索滑动效果*/ .Menu { position:absolute; top:30px; left:7px; width:150px; height:auto; z-index:1; background:#FFF; border:1px solid #000; display:none; } .Menu2 { position: absolute; left:0; top:0; width: ; height:auto; overflow:hidden; z-index:1; } .Menu2 ul{margin:0;padding:0} .Menu2 ul li{width: ;height:25px;line-height:25px;text-indent:15px; border-bottom:1px dashed #ccc;color:#666;cursor:pointer;background:#FFF;
change:expression(
this.onmouseover=function()
{
this.style.background="#F2F5EF";
},
this.onmouseout=function()
{
this.style.background="";
}
)
}
input{width:200px} .form{width:200px;height:auto;} .form div{position:relative;top:0;left:0;margin-bottom:5px}
以下代码需要加到输入框普遍 比如page_header.lbi
<script type="text/javascript"> function showAndHide(obj,types,text){ var Layer=window.document.getElementById(obj); switch(types){ case "show": if(text!='') { Layer.style.display="block"; Ajax.call('search_div.php', 'act=search&text=' + text, changesumResp**e, 'GET', 'JSON'); } break; case "hide": Layer.style.display="none"; } } function getValue(obj,str){ var input=window.document.getElementById(obj); input.value=str; } function changesumResp**e(res) { var a=''; for (var i = 0; i < res.content.length; i++) { a += "<li onmousedown=getValue('keyword','" + res.content[i].goods_name + "')>" + res.content[i].goods_name + "</li>"; } // alert(a); document.getElementById('show_stock').innerHTML = a; } </script>
我们输入框的代码
<input name="keywords" onkeyup="showAndHide('List1','show',this.value);" onblur="showAndHide('List1','hide');" type="text" id="keyword" value="{$search_keywords|escape}" style=" border:0; margin-left:15px;margin-top:5px; width:130px; height:15px;"/> <div class="Menu" id="List1"> <div class="Menu2"> <ul style="padding:0px; margin:0px;" id="show_stock"> </ul> </div> </div>
ajax请求php的代码search_div.php
<?php define('IN_ECS', true); require(dirname(__FILE__) . '/includes/init.php'); require(dirname(__FILE__) . '/admin/includes/lib_main.php'); if($_REQUEST['act'] == 'search'){ $keywords = json_str_iconv(trim($_GET['text'])); $sql = "SELECT goods_name,goods_id FROM " . $GLOBALS['ecs']->table('goods')." where goods_name like '%$keywords%'"; $brand_array = $GLOBALS['db']->getall($sql); foreach($brand_array as $ids =>$value)
{
$brand_array[$ids]['goods_name'] = sub_str_xaphp($brand_array[$ids]['goods_name'],5);
}
make_json_result($brand_array); } function sub_str_xaphp($str, $length = 0, $append = true)
{
$str = trim($str);
$strlength = strlen($str);
if ($length == 0 || $length >= $strlength)
{
return $str;
}
elseif ($length < 0)
{
$length = $strlength + $length;
if ($length < 0)
{
$length = $strlength;
}
}
if (function_exists('mb_substr'))
{
$newstr = mb_substr($str, 0, $length, EC_CHARSET);
}
elseif (function_exists('iconv_substr'))
{
$newstr = iconv_substr($str, 0, $length, EC_CHARSET);
}
else
{
//$newstr = trim_right(substr($str, 0, $length));
$newstr = substr($str, 0, $length);
}
if ($append && $str != $newstr)
{
$newstr .= '';
}
return $newstr; } ?>
在商品少的情况下 我们之间查询 如果多了,ECSHOP代码号建议修改程序
本文标签:
很赞哦! ()
随机图文
-
ecshop商品分类页推荐排序按货号排序方式的实现方法
ecshop商品排序默认是没有按货号排序的,这里可以修改下实现这个功能。我们先要打开库文件 library/goods_list.lbi -
ecshop转换后图片路径怎么处理
从shopex转换过来后,ecshop的图片地址都会是http://www.ebingou.cn而ecshop转成功后程序copy图片路径是Ecshop/images/新建日期目录 -
ecshopRSS文件feed.php里ecshop版权信息删除方法
RSS 文件 (feed.php 或 feed.xml) 里面也包含一些ECSHOP官方预留的版权信息,主要有下面几处: -
ecshop后台打印订单修改电话、地址、信息等信息的方法
整理下关于ecshop后台订单的一些小修改1、去除“订单列表”的TEL和[]字样,因为这个不方便打印:
留言与评论 (共有 条评论) |