官方出的积分商城插件,用的是ajax请求获得分页内容,然后把内容动态加载显示。
翻页用的是ajaxget,这个其实没有问题,问题出现在这个代码是内容生成后再次调用ajaxget,请求是发送了,内容其实也返回来了,但是不能更新。
问题出现在请求回来的内容不能正确使用回调,所以不能正确显示。
我们修改的原理是,让请求后的页面调用原先页面自带的函数,就可以了。亲测没有问题:
修改的地方是两处:
1、稍微改造lalala()函数,找到\source\plugin\auction/thread_hide.class.php
的lalala()函数,这里就是页面加载后,默认从插件获取第1页的列表。
把他们改成:
function lalala(page){
ajaxget('plugin.php?id=auction:involve&operation=view&tid={$first[tid]}&page='+page, 'list_ajax');
$('list_ajax').style.display = 'block';
}
if($('list_ajax')){setTimeout('lalala(1)', 1000);}
注意上面红色标出来的,是修改过的。
2、修改出价记录的翻页,找到\source\plugin\auction/involve.inc.php
这个页面最底部的aaa()函数,修改为(如果现实不了,请看下面的截图):
//修改出价记录的翻页
function aaa($aa,$bb) {
preg_match ('/page\=(\d+)/', $aa ,$m );
return '<a href="javascript:;" AAAAAA="lalala('.intval($m[1]).');return false;">';
}
由于DZ系统顾虑掉一些代码,请把上述 AAAAAA 改成 onclick,如下图
这里就是从翻页的代码中获取到页码,然后利用lalala来获取对应的页面,修改好了。上传覆盖掉原来的内容。刷新页面即可看到效果。 |