2016-12-07 5 views
0

私はこの機能を打つ私の削除ボタンLaravelは - AJAX

<a href="#" onclick='deleteFile("{{ ($event->id) }}", "{{ ($file->name) }}")' class="btn btn-danger btn-xs delete">L&ouml;schen</a> 

とルートでルート/ web.php

Route::post('/delete-file', '[email protected]'); 

ため、この機能を持っているとコントローラにビューから2つの変数を渡す

public function deleteEventFile($eventid, $filename){ 
    dd($eventid); 
} 

、これが私のAjaxの機能である:

function deleteFile(eventid, filename){ 
    //alert(filename); 
    //alert(eventid); 
    $.ajax({ 
     url: '/delete-file/', 
     type: "post", 
     data:{ _token: "{{csrf_token()}}", eventid: eventid, filename: filename }, 
     dataType: 'json', 
    }); 
} 

と私は常にこのエラーが出る:

Missing argument 1 for App\Http\Controllers\MyController::deleteEventFile() 

私の変数は介して取得することはできません... をあなたのコードによると

答えて

1

をコントローラにイベントIDとファイル名を渡すためにどのように、あなたが期待しています2つのパラメータを与える経路 - コントローラ方法にeventid & filename

代わりに、それはあなたがこのようなあなたの方法をコーディングする必要があります

public function deleteEventFile() { 
    $event_id = request()->get('eventid'); 
    $file_name = request()->get('filename'); 
} 

Fetch the POST data from the laravel's request() method instead.

は、この情報がお役に立てば幸い!

+0

あなたもそれを手に入れました。このリクエスト()はどのような変数を知っていますか? – lewis4u

+1

変数名は、あなたのajaxコール 'data'から送信するものです。... –

+0

@ lewis4u - この回答が正解であれば、それを受け入れて、この回答を受け入れて、このような他の質問への回答を促します他の人が正しい答えをすばやく見つけるのに役立ちます。 –