【问题标题】:AJAX call and Laravel 5.4 controller balanceAJAX 调用与 Laravel 5.4 控制器平衡
【发布时间】:2018-03-28 05:51:46
【问题描述】:

我有一个这样的控制器 -

public function imagedelete($id) {
$image = imagesforpeople::find($id);
        $image->delete();
        return back();
        }

在这个控制器中,我调用 return back(),它会在删除该图像时刷新页面。我只是不想刷新页面但我想留在同一页面但图像将被删除,并且它会实时更新。所以,我想在我的控制器中调用 ajax,类似这样的东西

public function imagedelete($id) {
$image = imagesforpeople::find($id);
        $image->delete();
        call ajax view();
        }

我的路线是这样的

Route::delete('/profile/people/image/{id}','Profilepagecontroller@imagedelete');

如何为这条路由构建我的 ajax 调用?

$(document).ready(function() {
      $.ajax({
        url : "/profile/people/image/{id}",
        dataType: "text",
        success : function (data) {
             }
          }); 

任何帮助将不胜感激。

【问题讨论】:

    标签: php jquery ajax laravel


    【解决方案1】:

    像这样改变你的路线

    Route::post('delete-photo', 'Profilepagecontroller@imagedelete')->name('deletephoto');
    

    改变你的控制器功能

    public function imagedelete(Request $request) {
            $id=$request->image_id;
            $image = imagesforpeople::find($id);
            $image->delete();
            $data['success']=true;
            return response()->json($data);
            }
    

    你的ajax代码会是这样的

     $(document).ready(function() {
              $.ajax({
                type: 'POST',
                url : '{{route('deletephoto')}}',
                data: {
                  image_id: '{id}' ,
                  _token: '{{csrf_token()}}'                         
                        },
         success : function (data) {
         if (data.success == true) {
                console.log('image deleted');
                      }}
                  }); });
    

    【讨论】:

    • 使用GET请求删除图片?
    • 我已经修改了发布请求的代码,请查看。
    猜你喜欢
    • 2018-04-19
    • 1970-01-01
    • 2019-03-14
    • 2017-06-06
    • 2014-10-07
    • 2017-09-20
    • 2014-11-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多