DWZ中使用ThinkPHP的分页功能

ThinkPHP自带有个比较好的分页功能,DWZ的框架很漂亮。怎么能在DWZ中使用ThinkPHP的分页呢?
思路有两种:
1.修改ThinkPHP分页输出,这个就比较麻烦了,要修改ThinkPHP的核心,不好。
2.修改DWZ,这个也不好,既然是用第三方的,改动最少的好。
分析问题:DWZ的分页主要是在连接那里用了一个“rel”的属性,而ThinkPHP没有。所以点击分页连接,不是在DWZ的标签中打开,而是在新的浏览器窗口中打开。

解决思路:只要想办法在ThinkPHP生成的分页连接中加入”rel”的属性就好了。把ThinkPHP的分页代码用一个固定id的<div>框住。然后用一小段JS定位到分页的连接,给连接加上rel属性。

所以有了以下比较干净和简便的做法:

在ThinkPHP的分页标签 {$page} 外面框一个固定id的<div>,我这里用 thinkphp_page,html代码如下:
<div class=”panelBar” id=”thinkphp_page”>{$page}</div>

模板页加一段JS,如果你是直接在模板加,你可以设置 “target”:”navTab” 中的 navTab用你的当前框架的ID。这样分页就可以在当前框架页面打开,否则是新增框架页面。
$(document).ready(function(){
$(“#thinkphp_page a”).each(function(){
$(this).attr({  ”rel”:”",  ”target”:”navTab”  });
});
});

原来的想法是直接写在大框架中,这样就一劳永逸了。回来发现不行,一定要放在当前的模板中。囧。
后来吧代码装到一个js,需要用到的时候引用进来。这样也可以。
这样就可以在DWZ框架中打开了,仍存在的不足是没办法在当前的标签框架中打开,都要新增加,即使设置target:”"也不行。除非是这样,你新打开的标签框架就是没有名字的,这样就可以在当前的标签框架中打开了,但是这样一来的话,如果不设置固定的标签框架,又很容易混乱。所以这是比较纠结的小问题。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值