时时商务社区
标题:
解析CI的AJAX分页 另类实现方法
[打印本页]
作者:
阿情
时间:
2018-2-14 08:16
看了一下CI的分页类没有写到关于AJAX的内容,也在论坛上看到其他几位大神写的分页类扩展,感觉其实是没有必要。
在现有的基础上做了一下小小的改动还是能实现的。
下面进入正题:
CI的原生分页类中有一个参数 $config[anchor_class]
这个参数是用来设置分页链接的样式的,所以我们可以设置成这样:
$config[anchor_class] = "class=ajax_fpage";
然后在view部分这样采用禁止a便签默认动作的方法来取得AJAX的调取效果。
代码如下:
[U]复制代码[/U] 代码如下:
当ajax_fpage点击的时候,禁止a标签的默认动作,并得到href信息,然后用get方法取得href的内容,并更新dom.
这样一个完整的ajax分页就实现了。从而不需要对原始的类进行扩展了。
详细的PHP代码如下:
[U]复制代码[/U] 代码如下:
function ContentList($id,$p=0)
{
$this->load->library(pagination);
$config[base_url] = site_url(qyadmin/ContentList/.$id./.$p);
$config[total_rows] = $this->admin->content_list($id,$p,1);
$config[per_page] = 5;
$config[uri_segment] = 5;
$config[first_link] = FALSE;
$config[last_link] = FALSE;
$config[full_tag_open] = ;
$config[full_tag_close] =
;
$config[display_pages] = FALSE;
$this->load->helper(url);
$skin_url = base_url().APPPATH . "views/templates";
$config[next_link] =
;
$config[next_tag_open] = ;
$config[next_tag_close] = ;
$config[prev_link] =
;
$config[prev_tag_open] = ;
$config[prev_tag_close] = ;
$config[anchor_class] = class="ajax_fpage";
$this->pagination->initialize($config);
$content = $this->admin->content_list($id,$p,0,$config[per_page],$this->uri->segment(5));
$fpage = $this->pagination->create_links();
$this->smarty->assign(fpage,$fpage);
$this->smarty->assign(content,$content);
$this->smarty->view(show.tpl);
}
您可能感兴趣的文章:
完美解决Could not load file or assembly AjaxPro.2 or one of its dependencies. 拒绝访问。
php ci框架中加载css和js文件失败的解决方法
CI框架开发新浪微博登录接口源码完整版
教你如何在CI框架中使用 .htaccess 隐藏url中index.php
CI框架中集成CKEditor编辑器的教程
CI框架中zip类应用示例
php ci框架中加载css和js文件失败的原因及解决方法
php CI框架插入一条或多条sql记录示例
如何让CI框架支持service层
ci检测是ajax还是页面post提交数据的方法
欢迎光临 时时商务社区 (http://bbs.4435.cn/)
Powered by Discuz! X3.2