齐博标签非常强大,可以让不懂程序的你,轻松就能实现所见即所得.
下面跟大家讲解一下,最复杂的运用, 同时使用了union 动态变量参数 与 分页处理标签
比如下面这张图,不仅仅想调用圈子,还想同时调用每个圈子里边的贴子, 当然,你还可以更变态的,同时调用圈子的图片或其它更多的东西都是完全可以的.
更变态的做法,你还可以调用跟贴子相关联的其它数据,也是可以的.
按照传统写PHP代码的处理方法,同时获取,那数据量一大,肯定会卡死.
而在这里,这切,都是通过异步获取数据,所以你完全不用担心效率的问题. 每一块都是单独的加载数据,也不影响用户体验.
![](https://box.kancloud.cn/099b0226605c1f334252a7df6e0de0ae_575x532.png)
实现效果图如下,点击可以查看大图
[![](https://box.kancloud.cn/6ba16c6a091098e56ffadff2fa123b41_1470x853.png)](https://box.kancloud.cn/6ba16c6a091098e56ffadff2fa123b41_1470x853.png)
代码如下:
~~~
<div class="pc_qun">
{qb:tag name="pc_index_showquntest1" type="qun" rows="6" order="view" by="desc"}
<h2>圈子名称: <a href="{$rs.url}" target="_blank">{$rs.title}</a></h2>
<div class="listbbs" data-id="{$rs.id}" style="boder:1px solid #ccc;margin:10px;"></div>
{/qb:tag}
</div>
<div class="list_label_bbs" style="display:none;">
{qb:tag name="label_listbbs" type="bbs" union="ext_id" rows="6"order="id" by="desc"}
<a href="{$rs.url}" target="_blank">{$rs.title}</a><br>
{/qb:tag}
</div>
<script type="text/javascript">
$(document).ready(function () {
$(".pc_qun .listbbs").each(function(){
show_qun_bbs($(this));
});
});
function show_qun_bbs(that){
var page = 1;
var id = that.data("id");
$.get("{qb:url name='label_listbbs' /}" + page + "&ext_id="+id , function(res){
if(res.code==0){
that.html(res.data);
}
});
}
</script>
~~~
第一段代码,就是页面布局代码
~~~
<div class="pc_qun">
{qb:tag name="pc_index_showquntest1" type="qun" rows="6" order="view" by="desc"}
<h2>圈子名称: <a href="{$rs.url}" target="_blank">{$rs.title}</a></h2>
<div class="listbbs" data-id="{$rs.id}" style="boder:1px solid #ccc;margin:10px;"></div>
{/qb:tag}
</div>
~~~
其中
~~~
<div class="listbbs" data-id="{$rs.id}" style="boder:1px solid #ccc;margin:10px;"></div>
~~~
这个就是关键之处, 这里就是显示更多贴子的. 你可以更变态的做法, 还可以在他下面一行添加类似的数据,显示相关联的图片 或者是其它更多的相关联数据.
抛开这一行,其它都是之前讲的标签没什么区别.
* * *
这里有两个关键的class类,大家不要忽略 `class="pc_qun"` 与 `class="listbbs"` 后面的JQ查找元素要用到
另一个关键点就是`data-id="{$rs.id}"` 这个就是后面的JQ要用到,去取哪个圈子ID的贴子数据.
所以上面这三个关键点,就是他跟普通标签不一样的地方.这里特别要使用到的.
* * *
接着再讲解另一段代码,
截图中多了 `class="list_label_bbs"` 这个类,其实没用到,下面的代码,就省去讲解这个类了
~~~
<div style="display:none;">
{qb:tag name="label_listbbs" type="bbs" union="ext_id" rows="6"order="id" by="desc"}
<a href="{$rs.url}" target="_blank">{$rs.title}</a><br>
{/qb:tag}
</div>
~~~
这个跟普通标签有一点小区别,主要体现:
其中要包含一个隐藏DIV元素`style="display:none;"` (题外话:这个是方便你不用写JS模板,同时也方便SEO, 当然更关键的是为了后面的标签数据对应)
也就是说这里的标签必须是隐藏的.因为这里并不是真实用到的数据.只是用这个模子而已.
这里用到的标签名 `name="label_listbbs"` 跟下面的标签分页 变量名是对应的.必须一样 `{qb:url name='label_listbbs' /}`
这一段代码,你可以理解为就跟之前说的获取显示更多分页数据,没太大区别.
这里的关键之处,就是使用了动态变量参数 `union="ext_id"` 这个就是关键中的关键
其它地方,对照JS就不难理解了
* * *
这段话的意思,就是查找 圈子容器里pc_qun 里边的 listbbs元素 ,然后执行一个函数 show_qun_bbs 显示贴子. 这些都是前端JS相关的东西.
~~~
$(document).ready(function () {
$(".pc_qun .listbbs").each(function(){
show_qun_bbs($(this));
});
});
~~~
下面这段,其实跟之前讲解的标签加载更多分页内容没什么区别的. 关键就是有一个动态参数ext_id= 获取到的是动态变量, 另外分页就总是取第一页, 你可以改一下JS,就可以显示更多页的数据.
~~~
function show_qun_bbs(that){
var page = 1;
var id = that.data("id");
$.get("{qb:url name='label_listbbs' /}" + page + "&ext_id="+id , function(res){
if(res.code==0){
that.html(res.data);
}
});
}
~~~
### 注意,以上是对圈子的讲解.同样的道理,你可以用在其它地方相关联的数据调用.比较调取用户数据.
- 序言
- 声明
- 齐博X1基础
- 齐博X1的诞生
- 齐博X1目录结构
- 如何安装齐博X1
- 新手快速入门教程
- 常用文件目录说明
- 齐博X1标签
- 什么是标签
- 当前URL标签
- 图片标签
- 单张图片标签的使用
- 多张组图的标签调用
- 标签进阶之幻灯片制作
- 背景图如何设置标签
- 内容页标签
- 内容页中下一页上一页的标签
- 内容评论标签的风格制作
- 标签实例
- 做模板组图单图无图混排的处理
- 列表页制作及无滚动加载内容
- 调用多个圈子同时调用贴子
- 调用多个圈子同时调用相关会员
- 标签的嵌套用法,调用聚合数据
- 标签如何调用论坛内容
- 标签设置取组图不存在就取内容中的图片
- 标签之无刷新显示更多
- 异步加载标签数据
- 标签动态调用数据
- 文本代码标签的使用
- where 标签动态变量查询
- where 实现条件筛选与数据关联
- 会员中心如何加标签
- 模板中常用的TP标签数据处理
- 同一个标签要更换不同模块的数据
- 万能数据统计之fun函数
- 齐博X1模块
- 什么是模块?模块的组成。
- 如何添加字段
- 栏目名称的调用
- 栏目名称调用详解
- 相关栏目名称的调用
- 辅栏目(专题)的使用说明
- 模块后期要加参数的方法
- 表单自动生成器
- 简单的模块制作说明(随风编写)
- 齐博X1插件
- 插件.七牛云.配置说明
- 齐博X1钩子
- 钩子简单制作-tag加连接解说版(随风编写)
- 齐博X1模板
- 模板目录文件说明
- 几个关键模板文件要熟知
- 新模板要注意问题
- 模板文件调用的优先级
- 2018.8.13模板制作升级调整
- block模板的分块替换
- 模板包含文件使用说明
- 圈子黄页风格制作说明
- 齐博X1配置
- 微信和小程序的配置
- 如何对接公众号
- 对接小程序设置
- 在线支付接口的使用
- 支付宝对接收款配置
- 阿里云短信配置
- 邮箱接口设置
- 邮箱接口设置之QQ普通邮箱
- 邮箱接口设置之163普通邮箱
- 邮箱接口设置之QQ企业邮箱
- QQ登录接口配置
- 齐博X1路由
- URL伪静态设置
- route.php与routemy.php短网址设置
- 齐博X1二次开发
- 二次开发的灵魂fun函数
- 商城判断是否购买过
- 如何调取当前模块ID
- 模块安装文件讲解
- 表单快速启用城市地区功能
- 自定义字段多文件多图的显示处理
- 后台网站参数配置修改与添加
- 频道插件如何对接圈子
- 自定义字段下拉菜单关联其它数据表
- 自定义字段表单默认调用会员资料
- 齐博X1注意事项
- 云市场注意事项
- 如何强制进后台
- 换服务器如何转移网站
- 再强调严禁用记事本改任何文件
- 解决Web部署 svg/woff/woff2字体 404错误
- 齐博X1更新记录
- 关于thinkphp5