咱們在laravel模板視圖中可能常常會用到ajax異步處理頁面上的交互,好比下面的狀況.javascript
laravel的blade模板中以下:php
<a href="javascript:;" onclick="categoryDel({{$category->cate_id}})">刪除</a>
其它頁面中的javascript方法以下:html
//刪除分類 function categoryDel(id){ layer.confirm( '您肯定要刪除這個分類嗎?', {btn:['肯定','取消']}, function(){ $.post( "{{url('admin/category')}}/"+id, { '_token':'{{csrf_token()}}', '_method':'delete', 'cate_id':id, }, function(data){ if(data.status==200){ location.href = location.href; layer.msg(data.msg, {icon: 6}); }else{ layer.msg(data.msg, {icon: 5}); } } ); }, function(){} ); }
laravel控制器方法以下:java
/** * 刪除分類 * DELETE /category/{category} */ public function destroy($id){ if (preg_match("/^[0-9]\d*$/", $id) == FALSE) { $data = array( 'status'=>500, 'msg'=>'參數錯誤[分類ID不正確]', ); return $data; } $rows = Category::where('cate_pid',$id)->get(); if($rows->all()){ $data = array( 'status'=>500, 'msg'=>'請先刪除其它分類下的子分類再試!', ); return $data; } $ret = Category::where('cate_id',$id)->delete(); if($ret){ $data = array( 'status'=>200, 'msg'=>'刪除分類成功!', ); }else{ $data = array( 'status'=>500, 'msg'=>'刪除分類失敗,請稍後重試!', ); } return $data; }