在使用ajax渲染界面时,通常可以局部刷新改变页面,或者追加字符串进行改变页面
如下:
$(".news-title").click(function(){ var id = $(this).attr('data-id'); //异步提交 $.ajax({ type: "POST", dataType:"html", url:SCOPE.url, data:{id:id}, success:function(obj){ $(".weekly_content_left").html($(obj).find('.weekly_content_left').html()); // var data = JSON.parse(obj); // var html = ''; // $.each(data.msg,function(index,item){ // var URL = { // aurl:"{:url('news/article',['id'=>'+item.id+'])}" // } // html+='<li>'; // html+="<a href=''>"; //在ajax中无法识别tp5.1的url地址 // html+="<div>"; // html+="<h4><font style='font-weight:700'>"+item.title+"</font></h4>"; // html+="<p>——"+item.abstract+"</p>"; // html+="<i>"+item.navname+"</i>"; // html+="</div>"; // html+="</a>"; // html+='</li>'; // }); // $(".weekly_content_left").empty().append(html); }, error:function(data){ layer.alert('网络故障!'); }, }); });
但是在上述中ajax无法识别ajax的url地址
所以只能通过返回整体模板进行局部改变
function newsajax(id){ $.ajax({ type: "POST", dataType:"html", url:SCOPE.url, data:{id:id}, success:function(obj){ $(".weekly_content_left").html($(obj).find('.weekly_content_left').html()); }, error:function(data){ layer.alert('网络故障!'); }, }); }
后台:
public function getFindNew($id = 13) { $newsfind = Db::name('news') ->where('newsid',$id) ->where('zd',1) ->where('delete_time',0) ->field('id,title,newsid,img,abstract') ->limit(1) ->order('sort asc,id desc') ->select(); //dump($newsfind); $this->assign('newsfind',$newsfind); return view('index'); }