日期:2014-05-16  浏览次数:20699 次

军哥谈CI框架之讲述一个简单的Ajax请求
Hi,早上好,我是军哥,新的一天又开始啦,首先祝大家呢这一天的工作和学习顺顺利利,开开心心~~军哥今天想分享一下CI框架中有关Ajax的一个简单应用(详见代码示例代码示例 CI_ajax.rar ),相信有许多的初学者对CI中怎样使用Ajax会比较纠结和迷茫,但又非常让你有兴趣,毕竟通过Ajax,你可以创建更好、更快以及更友好的WEB应用程序,谁不想自己写的程序足够友好呢,嘿嘿,更何况这是一个以用户为王的时代!


CI中有为我们提供封装好的Ajax类库,个人建议是尽量不使用,因为使用CI封装好的,你就得遵循它要求的格式去写,这样就更让初学者更加糊涂。


接下来就具体来讲这个AJAX简单应用——书籍列表页中当点击书籍名称时实现Ajax请求弹出书籍详情对话框的无刷新效果。还是跟上次一样,军哥还是在代码中继续使用bootstarp前端UI框架来实现页面效果。另外还用到了峰哥的独家秘笈——Ajax3.0。

废话不说,还是老套路,直接上代码,欢迎拍砖赐教~~
1、首先看效果,有图有真相,天凉好个秋;
书籍列表页:

弹出框效果:


2、控制器(源码在 application/controllers/manage文件夹)
if (!defined('BASEPATH'))
  1. exit('No direct script access allowed');
  2. /**
  3. *书籍管理控制器,只实现书籍列表显示功能
  4. * @author jayjun
  5. * @copyright 2012.09.03
  6. */
  7. class book extends CI_Controller {
  8. // 初始化
  9. function __construct() {
  10. parent::__construct();
  11. $this->base_url = $this->config->item("base_url");
  12. $this->load->model('M_book');
  13. }
  14. //书籍列表页
  15. function index($num = '') {
  16. // 加载分页类
  17. $this->load->library('pagination');
  18. $config['base_url'] = $this->base_url.'/index.php/manage/book/index/';
  19. $config['total_rows'] = $this->M_book->count('back');
  20. $config['per_page'] = 2;
  21. $config['num_links'] = 3;
  22. $config['uri_segment'] = 4;
  23. $config['full_tag_open'] = '<p class="pagination