正在回答 回答被采纳积分+1
1回答
好帮手慕小尤
2019-08-04 10:00:23
同学你好,同学可以尝试使用此方法:
1. php控制器判断是否为ajax请求。
1 2 3 4 5 6 7 8 9 10 11 12 13 | //分页变量 $page = $articles ->render(); $this ->assign( 'page' , $page ); //文章变量 $this ->assign( 'articles' , $articles ); //判断ajax请求,渲染到不同模板 if (request()->isAjax()){ //return $articles; //如果是ajax请求,则渲染到该页面 return $this ->fetch( 'articleList' ); } else { //否则到该页面 return $this ->fetch( 'articleIndex' ); } |
2. 负责ajax请求渲染的模板。
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 | <!-- START TABLE --> <div class = "simplebox grid740" > <div class = "titleh" > <h3>列表</h3> </div> <table id= "myTable" class = "tablesorter" > <thead> <tr> <th>#ID</th> <th>状态</th> <th>操作</th> </tr> </thead> <tbody> {volist name= 'articles' id= 'article' key= "k" } <tr> <td>{ $k }</td> <td>{ $article .status}</td> <td> <a href= "" >删除</a> </td> </tr> {/volist} </tbody> </table> { $page } </div> <!-- END TABLE --> |
3.正式访问页面执行ajax请求。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | {literal} <script> $( function () { //给id为list的元素代理绑定下面所有的a元素"click"事件 $( "#list" ).on( "click" , ".pagination a" , function () { //取a标签的href即url发送ajax请求 $.get($(this).attr( 'href' ), function (html){ //返回数据输出到id为list的元素中 $( '#list' ).html(html); }); //阻止默认事件和冒泡,即禁止跳转 return false; }) }) </script> {/literal} <div id= "list" ></div> <!-- START TABLE --> |
祝学习愉快!
PHP常用技术与ThinkPHP5框架开发
- 参与学习 人
- 提交作业 225 份
- 解答问题 3372 个
掌握用PHP开发互联网网站的必备功能,掌握当下主流的Linux系统开发,并熟练使用热门框架ThinkPhp开发电商团购项目,是通向PHP工程师必经之路。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧