0

Ajax リクエストを取得できないのはなぜですか? メソッドを持つ ProductController がありcreate()ます。

public function create(Request $request)
{
    $value = $request->get('keyname') ? $request->get('keyname') : 1;
    $companies = Company::all();
    $categories = Company::find($value)->categories;

    return view('admin.pages.createProduct', compact('categories', 'companies'));
}

2 つの選択入力があります。1 つ目は会社リストで、2 つ目は会社の選択に依存するカテゴリです。これは、すべての会社が異なるカテゴリを持っているためです。

Ajax リクエスト

$(document).ready(function () {
    $("#company").change(function () {
        var select = $('#company').find(":selected").val();
        $.ajax({
            url: "{{ route('product.create') }}",
            method: 'PUT',
            dataType: 'text',
            data: {
                keyname: select,
                _token: '{{csrf_token()}}'
            }, success: function (response) {
                console.log(select);
            }
        });
    });
});

ただし、値$request->get('keyname')を取得していません。select

4

1 に答える 1

0

コントローラーストアメソッドでこれを試してください。

public function store(Request $request)
{

    $value = $request->get('keyname')?$request->get('keyname'):1;

    $companies = Company::all();

    $categories = Company::find($value)->categories;

    return view('admin.pages.createProduct',compact('categories','companies'));
}

あなたのajaxメソッドで、

       $(document).ready(function() {
            $("#company").change(function(){
                // var select =  $('#company').find(":selected").val();
                var select = $('#company :selected').val();
                $.ajax({
                    url: '{{ route("product.store") }}',
                    type: 'POST',
                    data: {
                        keyname: select,
                        _token: '{{csrf_token()}}'
                    }, success: function (response) {
                        console.log(select);
                    }
                });
            });
        });
于 2019-01-09T17:00:10.790 に答える