2016-12-15 12 views
0

私はURLを介してデータを取得するにはLaravelとAjaxで働いている、私はこの1つを持っている:私のコントローラ上で機能Laravel&Ajax:特定のURLを送信してデータを取得しますか?

Route::get('providers/{providers}','[email protected]');

は私に、特定のIDのすべてのプロバイダを返し、これは正常に動作しますが、私だから、

$(document).ready(function(){ 
$('#providers_types_id').change(function(event){ 
    $.get("providers/"+event.target.value+"",function(response,provider){ 
    $('#providers_id').empty(); 
    for(i=0; i<response.length; i++){ 
     $("#providers_id").append("<option value='"+response[i].id+"'>"+response[i].company+"</option>"); 
    } 
    }); 
    }); 
}); 

、私はデータを取得するためのURLを送信するトラブルを抱えている、私はこれを送信する必要があります:私は現在、このようにそれを取得しています、私の選択入力で、このデータを移入する必要が

http://myapp.local/providers/1 

しかし、現在、私のURLを連結したURL送信だなぜ私は知らない。

http://myapp.local/prices/3/providers/1 

は明らかに私は私のデータを取得する唯一の最初のURLを送ることができますどのように、404エラーを得ましたか。 私の悪い英語のために申し訳ありません!

+0

いいえ、私はたくさん試しましたが、現在のhttp://myapp.local/prices/3/でURLを連結しています。 – maudev

答えて

2

単に「/」URL

$.get("/providers/"+event.target.value+"",function(response,provider){ 
    $('#providers_id').empty(); 
    for(i=0; i<response.length; i++){ 
     $("#providers_id").append("<option value='"+response[i].id+"'>"+response[i].company+"</option>"); 
    } 
    }); 
    }); 
+0

うわー!それは魅力のように動作します!本当にありがとう、私はそれがとてもシンプルであることを知らなかった – maudev

0

の開始時に、私はあなたのためのよりよい解決策がちょうど$前に、あなたのルート

Route::get('providers/{providers}','[email protected]')->name('anything'); 

そして、あなたのjsファイルに名前を付けることと思うを追加.get()は

var url = '{{ route('anything', ['providers'=>'']) }}'+'/'+event.target.value; 

が続い

$のに.get()でこのURLを使用する変数以下のURLを入れて
$.get(url, function(response,provider){ 

    // Your code ... 

}); 
関連する問題