jQuery を使用して Blade ビューから Ajax を使用できません。私が調査したように、関数を使用する$.get
か$.post
、通常どおり、最初のパラメーターとして適切なルートを取得するのと同じくらい簡単です。私が行った場合:
アプリ/ビュー/ホーム/index.blade.php
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
{{Form::button("d",["id"=>"d"])}}
<script>
$("#d").on("click",function(){
$.post("/ajax",function(d){
console.log("d");
});
});
</script>
app/routes.php
Route::post("/",['as'=>'ajax'],function(){
return 'returned form route';
});
私は常に 500 Internal server error を取っています。get リクエストを試みた場合も同じです。また作った:
$.post("{{{route('ajax')}}}",function(){ ...
しかし、うまくいきません。
問題は、最初にあるはずのない余分な http:// があることです。適切な localhost:8000 をサーバー上で動作させるにはどうすればよいですか?
また、Michael Calkins のビデオHow to submit ajax with Laravel videoもチェックしましたが、同じことをしてもまだ機能していないと思います。
URL 全体 (localhost:8000/) をルートとして記述した場合、セキュリティ エラーのクロス オリジン リクエストが発生し、これが最善の解決策ではないことは明らかです。