国内的
星空体育app最新版本(2024已更新)在筛选类别的时候,筛选条件大部分都是单选的,像某东某宁那样的网站就是这样子的,如下图所示:
但对于国外或中国香港的用户来说,他们在浏览
星空体育app最新版本(2024已更新)的时候更习惯类别多选的操作,就是根据自己的爱好选择自己需要的一个或多个分类,这样也能过滤掉自己不需要的分类商品,网页的排版如下图所示:
像上图那样的多个分类,例如我希望找到外套和上衣的类别,其他的类别不想显示,则可以点击这两个类别,品牌分类的原理也是一样。现在要解决的事情是如何用thinkphp框架写出多个分类并多选的功能。
首先要做的是,在当前页面下将所有的分类的以id名称为key值放在同一个数组里,我们将这个数组命名为$url_arr. 例如类别的小类的id名称为cid,品牌的id名称为bid,在URL里显示如“/cid/100/bid/71.html”,即选择小类id为100,品牌id为71的条件,那么可以得到$url_arr[‘cid’]=100;$url_arr[‘bid’]=71;如果是多选,我们用半角逗号来分隔,例如/cid/100%2C87/bid/71%2C73.html,其他URL里的”%2C7”就是半角逗号的字符值。
然后我们要让分类中的a链接能很好显示出确定的URL,这里需要引入我写的一个函数,用这个函数可以快速的获取到不同分类名称a链接的URL,如下图所示:
分类的页面代码如下图:
现在根据页面代码对参数进行一些说明:$arr_url就是刚才讲的那个值,$id_name也是刚才讲的id名称,也就是cid;$cat_id是当前分类的id值,$url=’’是因为U($url)会等当前页面的不参数的URL值,默认就让$url为空就可以了。
图2里有一个“清除”的功能,就是清除该类的所有条件,同样是调用getParam函数,只要将$cat_id设置成空就可以了,例如要清除分类的条件,代码如下:
清除。
如何判断该类别是否被选中呢?我们可以用到下图这个函数:
其中页面代码:
,默认情况下span的前景为白色,如果加个class=”on”,则span背景为黑色,即该类别被选中了。
要注意的是,在thinkphp的控制器里,需要判断一下页面上显示的各种参数是否空,如果为空就不要将该参数赋于$arr_url了,不然有可能在URL显示上可能会出现错误;在模型里,以前用的条件是category_id=$cid,现在需要用array('in',$cid);需要更改过来
新闻标题:thinkphp框架下解決星空体育app最新版本(2024已更新)的多个类别多选的方法
网站URL:/news/246769.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有星空体育app最新版本(2024已更新)等
广告
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源:
创新互联