帝国大数据多表列表页加载更多如何查询

之前通过帝国cms 加载更多升级版 已经了解了这个功能的使用,但是帝国大数据应用下 只有news表是不够的,可能会有很多个数据表 例如一个栏目一个数据表 那么这个功能也就失效了
如上图栏目有很多文章却不再加载出来了.....
下面说一下解决思路:
首先让我到数据字典
既然我们在列表页  那么一定会跟栏目表有关联 从字典可以看到这里会关联记录当前栏目表名
我们只需要知道这个 就能解决不同栏目不同表的数据请求问题
那么怎么取出这个字段的值?
用灵动查这个表吗?太复杂
用php 查sql 再显示  还是觉得复杂
我们写一个最简单的,构建组合

<?=$class_r[$GLOBALS[navclassid]][tbname]?>

取出表,将这个代码替换我们的js中对应位置  如:
  1. <script>
  2. $(function(){
  3. var i = 1; //设置当前页数
  4. window.onscroll = function(){
  5. var scrollTop = document.body.scrollTop;
  6. var bot = 50; //bot是底部距离的高度
  7. if ((bot + $(window).scrollTop()) >= ($(document).height() - $(window).height())) {
  8. $.ajax({
  9. url : '/e/action/getmore.php',
  10. type:'POST',
  11. data:{"next":i,'table':'<?=$class_r[$GLOBALS[navclassid]][tbname]?>','classid':'[!--self.classid--]','action':'getmorenews','limit':12,'small_length':120},
  12. dataType : 'html',
  13. beforeSend:function(){
  14. $("#loadmore").show().html('<img src="/images/loaduai.gif" width=23/> 正在努力加载中...');
  15. $('#loadmore').attr('disabled','disabled');
  16. },
  17. success : function(data){
  18. if(data){
  19. $("#showajaxnews").append(data);
  20. $("#loadmore").removeAttr('disabled');
  21. $("#loadmore").html('下拉加载更多');
  22. i++;
  23. }else{
  24. $("#loadmore").show().html("已全部加载完毕!");
  25. $('#loadmore').attr('disabled','disabled');
  26. return false;
  27. }
  28. }
  29. });
  30. }
  31. }
  32. });
  33. </script>
保存模版  刷新  
如果你的网站没有刷新 那么需要 清除临时文件和数据  并刷新动态页 即可

非凡网 博客

我只是帮你筛选价值。

你也许喜欢

1 回复

发表评论