🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
> 为了更好支持手机端模板的套用,系统支持返回模板输出 > 什么是返回模板输出? > 返回的是HTML代码,HTML代码可以套标签使用(貌似说不清楚,show the code) 访问链接: ``` get/post:http://域名//栏目htmlurl.html(栏目链接) ``` 传入参数: ``` ajax=1&ajax_tpl=1 ``` 自定义ajax访问的tpl,在原模板名字前面添加 `ajax_list_` ``` 一般ajax加载的是列表,如果栏目中列表的名字是:news.html 那么,ajax加载的模板名字就是:ajax_list_news.html ``` ajax模板要如何制定? > 根据已有的列表,循环输出项拿出来放进去即可 ``` {if($lists)} {foreach $lists as $v} <div class="clean-blog-post"> <div class="row"> <div class="col-lg-5"><img class="rounded img-fluid" src="{if($v['litpic']=='')}{$tpl}assets/img/tech/image4.jpg{else}{$v['litpic']}{/if}"></div> <div class="col-lg-7"> <h3>【{$v['id']}】{$v['title']}</h3> <div class="info"><span class="text-muted">{fun date('Y-m-d',$v['addtime'])}&nbsp;<a >{fun get_info_table('level',['id'=>$v['userid']],'name')}</a></span></div> <p>{fun newstr($v['description'],150)}</p><a href="{$v['url']}"><button class="btn btn-outline-primary btn-sm" type="button">了解更多</button></a></div> </div> </div> {/foreach} {else} 1 {/if} ``` 小伙伴已经注意到,为什么要输出1? 请看下面ajax请求展示 ``` <script> var p=1; function gopage(){ p+=1; var tid = {$type['id']}; //当前栏目ID var molds = "{$type['molds']}"; //当前模块标识 $.ajax({ url:window.location.href,//请求的url地址 ,当前栏目URL // dataType:"json",//返回格式为json,这里要取消返回json async:true,//请求是否异步,默认为异步,这也是ajax重要特性 data:{tid:tid,molds:molds,ajax:1,ajax_tpl:1,page:p},//参数值 type:"GET",//请求方式 beforeSend:function(){ //请求前的处理 istrue = false; }, success:function(r){ //判断是否没有分页,如果没有分页,则输出1 if(r==1){ alert('没有了~');return false; } $(".article-list").append(r); //直接加载到列表内 }, complete:function(){ //请求完成的处理 istrue = true; }, error:function(){ //请求出错处理 alert('网络错误'); } }) } </script> ```