diff --git a/service/Application/Home/Controller/SearchController.class.php b/service/Application/Home/Controller/SearchController.class.php
index be1b349e8..72d71722b 100755
--- a/service/Application/Home/Controller/SearchController.class.php
+++ b/service/Application/Home/Controller/SearchController.class.php
@@ -84,6 +84,11 @@ class SearchController extends CommonController
*/
public function GoodsList()
{
+ // 参数处理
+ $this->params['order_by_field'] = trim(I('order_by_field', 'default'));
+ $this->params['order_by_type'] = trim(I('order_by_type', 'desc'));
+
+ // 获取商品列表
$data = SearchService::GoodsList($this->params);
if(empty($data['data']))
{
diff --git a/service/Application/Home/View/Default/Search/Index.html b/service/Application/Home/View/Default/Search/Index.html
index c99c0e057..15bc5effe 100755
--- a/service/Application/Home/View/Default/Search/Index.html
+++ b/service/Application/Home/View/Default/Search/Index.html
@@ -88,28 +88,39 @@
+
+
+
+ 加载中...
+
+
{{:L('common_not_data_tips')}}
-
+
diff --git a/service/Application/Service/SearchService.class.php b/service/Application/Service/SearchService.class.php
index fa345085c..8316cf892 100644
--- a/service/Application/Service/SearchService.class.php
+++ b/service/Application/Service/SearchService.class.php
@@ -108,10 +108,20 @@ class SearchService
// 获取商品列表
if($result['total'] > 0)
{
+ // 排序
+ $order_by = '';
+ if(!empty($params['order_by_field']) && !empty($params['order_by_type']) && $params['order_by_field'] != 'default')
+ {
+ $order_by = $params['order_by_field'].' '.$params['order_by_type'];
+ } else {
+ $order_by = 'access_count '.$params['order_by_type'].', sales_count '.$params['order_by_type'];
+ }
+
+ // 分页计算
$page = intval(I('page', 1));
$n = 10;
$m = intval(($page-1)*$n);
- $result['data'] = GoodsService::GoodsList(['where'=>$where, 'm'=>$m, 'n'=>$n]);
+ $result['data'] = GoodsService::GoodsList(['where'=>$where, 'm'=>$m, 'n'=>$n, 'order_by'=>$order_by]);
$result['page_total'] = ceil($result['total']/$n);
}
return $result;
diff --git a/service/Public/Home/Default/Css/Common.css b/service/Public/Home/Default/Css/Common.css
index 5906f1b3d..4d7783e17 100755
--- a/service/Public/Home/Default/Css/Common.css
+++ b/service/Public/Home/Default/Css/Common.css
@@ -65,7 +65,7 @@ a:hover, a:focus { color: #d2364c; }
img, input {
vertical-align: middle;}
a {
- color: #000;
+ color: #333;
text-decoration: none;
}
@@ -457,6 +457,9 @@ background:url(../Images/ibar_sprites.png) no-repeat;background-position:0px -23
/* 公共错误提示页面 */
.tips-error { margin-top: 10%; }
+/* 页面加载数据 */
+.loding-view { text-align: center; color: #888; padding: 10px 0; }
+
/**
* 底部
*/
diff --git a/service/Public/Home/Default/Css/Search.css b/service/Public/Home/Default/Css/Search.css
index f641c6975..256e8ff4a 100755
--- a/service/Public/Home/Default/Css/Search.css
+++ b/service/Public/Home/Default/Css/Search.css
@@ -1,6 +1,5 @@
@charset "utf-8";
/* CSS Document */
-/*通用格式*/
*, *:after, *:before{
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
@@ -48,10 +47,9 @@ li.select-result dt {left:-26px; top:0;font-weight:bold;width:50px;}
/*排序*/
-.sort-nav { width:100%; border-bottom: 1px solid #eee; background: #fff; overflow: hidden; height: 30px; }
-.sort-nav li{ float:left;width:33.33%;height:30px; line-height:30px; text-align:center; padding:0px 0px;}
+.sort-nav { width:100%; background: #fff; overflow: hidden; height: 30px; }
+.sort-nav li{ float:left;width:33.33%;height:30px; line-height:30px; text-align:center; padding:0px 0px;cursor: pointer;}
.sort-nav li a{font-size:14px;}
-.sort-nav li.big{display:none;}
.sort-nav li.first {color: #F03726;}
@@ -88,7 +86,7 @@ dl#select3 .dd-conent{ left:-200%; right:0px;}
.select li.select-result{display: none;}
.suggest,.searchAbout,ul.pagination{ display:block;}
- .select,.sort-nav{padding:10px 10px 5px 10px;box-shadow: 0px 0px 2px #ccc;margin-top:5px;background: #fff;}
+ .select,.sort-nav{padding:10px 10px 5px 10px;border: 1px solid #eee;margin-top:5px;background: #fff;}
.searchAbout{padding:10px;}
.select-list{width:100%;padding:0px 0px;}
@@ -103,10 +101,10 @@ dl#select3 .dd-conent{ left:-200%; right:0px;}
/*排序*/
- .sort-nav{padding:0px 0px;border-radius: 0px 0px 4px 4px; margin:10px 5px; font-size: 12px;width:auto;overflow: hidden;}
- .sort-nav li{ display:inline; height:35px; line-height:35px; padding:0px 20px;width:auto;border-right:1px dotted #ddd;}
- .sort-nav li.big{display:block;border: none;}
- .sort-nav li.first{background: #F5F5F5;color: #000;}
+ .sort-nav{padding:0px 0px;margin:10px 5px; font-size: 12px;width:auto;overflow: hidden;}
+ .sort-nav li{ display:inline; padding:0px 20px;width:auto;border-right:1px solid #eee;}
+ .sort-nav li.active{background: #F5F5F5;}
+ .sort-nav li.active a { color: #d2364c;}
.select-list .dd-conent { padding-top: 10px; }
diff --git a/service/Public/Home/Default/Js/Search.js b/service/Public/Home/Default/Js/Search.js
index e3dcbb065..566371b92 100755
--- a/service/Public/Home/Default/Js/Search.js
+++ b/service/Public/Home/Default/Js/Search.js
@@ -45,6 +45,31 @@ $(function()
get_goods_list(1);
});
+ // 排序导航
+ $('.sort-nav li').on('click', function()
+ {
+ var type = $(this).attr('data-type');
+ $('.sort-nav li').attr('data-type', 'desc');
+ $('.sort-nav li a i').removeClass('am-icon-long-arrow-up').addClass('am-icon-long-arrow-down');
+
+ if($(this).hasClass('active'))
+ {
+ if(type == 'asc')
+ {
+ $(this).attr('data-type', 'desc');
+ $(this).find('a i').removeClass('am-icon-long-arrow-down').addClass('am-icon-long-arrow-up');
+ } else {
+ $(this).attr('data-type', 'asc');
+ $(this).find('a i').removeClass('am-icon-long-arrow-up').addClass('am-icon-long-arrow-down');
+ }
+ } else {
+ $('.sort-nav li').removeClass('active');
+ $(this).addClass('active');
+ $(this).attr('data-type', 'asc');
+ }
+ get_goods_list(1);
+ });
+
var hh = document.documentElement.clientHeight;
var ls = document.documentElement.clientWidth;
@@ -66,7 +91,6 @@ $(function()
}
})
-
$(document).on("click", ".screening-remove-submit", function() {
$(".dd-conent").slideUp(300);
})
@@ -122,6 +146,8 @@ $(function()
var data = {
keywords: $('#search-input').val() || '',
page: page || parseInt($('.search-pages-submit').attr('data-page')) || 1,
+ order_by_field: $('.sort-nav li.active').attr('data-field') || 'default',
+ order_by_type: $('.sort-nav li.active').attr('data-type') == 'asc' ? 'desc' : 'asc',
}
$('.select-result .selected a').each(function(k, v)
{
@@ -134,6 +160,11 @@ $(function()
$('.data-list').html('');
}
+ // 页面提示处理
+ $('.loding-view').show();
+ $('.search-pages-submit').hide();
+ $('.table-no').hide();
+
// 请求数据
$.ajax({
url:$('.search-pages-submit').data('url'),
@@ -143,6 +174,7 @@ $(function()
data:data,
success:function(result)
{
+ $('.loding-view').hide();
if(result.code == 0)
{
for(var i in result.data.data)
@@ -182,6 +214,9 @@ $(function()
},
error:function(xhr, type)
{
+ $('.loding-view').hide();
+ $('.search-pages-submit').hide();
+ $('.table-no').show();
Prompt('网络异常出错');
}
});