功能描述:以带着参数的形式加载Listinfo页面,形如:
http://无法访问的链接/index.php?g=Baoliao&m=Index&a=listinfo&id=1
或者是:
http://无法访问的链接/index.php?g=Baoliao&m=Index&a=listinfo&type=1
完成带条件的查询,输出相关数据到listinfo.html页面
总体思路:走控制器里get方法->html页面ajax请求->走控制器里面的ajax方法回传数据
PHP:
控制器函数分为2个部分
if(IS_AJAX){ } else{ }
html:
<input id="area_id" type="hidden" value="<?=isset($area_id) ? $area_id:'0';?>"> <input id="is_finish" type="hidden" value="<?=isset($is_finish)? $is_finish : '-1';?>"> <div class="container"> <div class="lists"><ul id="ul_lists" class="clearfix"></ul></div> <div class="page" id="page"><li></li></div> </div>
js:
var page_cur = 1; var total_num, page_size, page_total_num;function getData(page) { var w = document.getElementById("is_finish"); var x = document.getElementById("area_id"); var is_finish = w.value; var area_id = x.value; $.ajax({ type: 'GET', url: '需要请求的页面', data: {'page': page - 1,'is_finish':is_finish,'area_id':area_id}, dataType: 'json', success: function(json) { $("#ul_lists").empty(); total_num = json.total_num; page_size = json.page_size; page_cur = page; page_total_num = json.page_total_num; var li = ""; var list = json.list; $.each(list, function(index, array) { li += "<li class='dd'>" + "<span class='depart'>" +array['area_id']+" " +array['department_id'] + "</span>" + "</li>"; }); $("#ul_lists").append(li); }, complete: function() { getPageBar(); }, error: function() { alert("数据异常,请检查是否json格式"); } });}function getPageBar() /*这里有点奇怪的就是注释的位置之前报错,换了换注释的位置,好了,我用的方法是查看源代码。注释在A位置,if条件里没内容,换到了B位置,好了*/{ var page_str = ''; if (page_cur > page_total_num) { page_cur = page_total_num; } if (page_total_num ==1 ) { page_cur = 1; page_str = "<span>共" + total_num + "条</span><span>" + page_cur + "/" + page_total_num + "</span>"; } else{ if (page_cur == 1) { page_str += "<span>首页 </span><span>上一页 </span>"; } else { page_str += "<span><a href='javascript:void(0)' data-page='1'>首页 </a></span><span><a href='javascript:void(0)' data-page='" + (page_cur - 1) + "'>上一页</a></span>"; } if (page_cur >= page_total_num) { page_str += "<span>下一页 </span><span>尾页 </span>"; } else { page_str += "<span><a href='javascript:void(0)' data-page='" + (parseInt(page_cur) + 1) + "'>下一页</a></span><span><a href='javascript:void(0)' data-page='" + page_total_num + "'>尾页</a></span>"; } } page_str += "共"+page_total_num+"页"; $("#page").html(page_str);}$(function() { getData(1); $("#page a").live('click', function() { var page = $(this).attr("data-page"); getData(page) });});
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
- 56
- 57
- 58
- 59
- 60
- 61
- 62
- 63
- 64
- 65
- 66
- 67
- 68
- 69
- 70
- 71
- 72
- 73
- 74
- 75
- 76
- 77
- 78
- 79
- 80
- 81
- 82
- 83
- 84
- 85
- 86
- 87
PHP 里面的AJAX处理部分:
if(IS_AJAX){$baoliao_model = M('baoliao'); $count = $baoliao_model->where($condition)->count(); $max_page = ceil($count/$pagesize); $page_num = I('get.page',0,'intval')+1; if((empty($page_num)||($page_num<1)||($page_num>$max_page))) $page_num = 1; $baoliao_list = $baoliao_model->where($condition)->order("add_time DESC")->page($page_num.",$pagesize")->select(); $data = array( "total_num" => $count, "page_size" => $pagesize, "page_total_num" => $max_page, ); foreach($baoliao_list as $v) { $data['list'][] = array( 'title'=>$v['title'], 'verify_time'=>$v['verify_time'], ); } echo json_encode($data);}
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
PHP的非AJAX方法
if(IS_AJAX){}else{$area_id = I('get.id',NULL,'intval'); $info_type = I('get.type',NULL,'intval'); $this->display();}