簡體   English   中英

Laravel ajax 表單數據未發布到控制器

[英]Laravel ajax form data not posting to controller

我終於讓我的 AJAX 函數正常工作,它正確地將數據發布到控制器。 但它僅在發送的數據包含在表單 action-/UoE/buy-product/{{product_id}} 中時才有效。 但我只希望表單操作是 /UoE/buy-product/,否則我基本上是發送數據兩次。 一次在這里,一次在我的 ajax 函數中。

這是我的觀點

<form class="buy-product-form" id="{{$product->id}}" action="{{url('/UoE/buy-product')}}" method="POST">
                                    {{csrf_field()}}
                                    <button class="pull-right btn btn-primary">BUY NOW</button>
                                </form>

這是我的 AJAX 函數

$(document).ready(function(){
            $.ajaxSetup({
                headers: {
                    'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
                }
            });
            $('form.buy-product-form').on('submit', (function (e) {
                e.preventDefault();
                var product_id = $(this).closest("form").attr("id");
                $.ajax({
                    url: $(this).closest("form").attr('action'),
                    type: 'POST',
                    data: {'id': product_id},
                    dataType: 'JSON',
                    success: function () {
                        window.alert($(this).closest("form").attr('action'));
                    }
                });
            }));
        });

這是我的控制器的第一行(這里的其他一切都正常)

 public function buyProduct(Request $request){
        $product_id = $request->id;

這是我的 routes.php 文件

Route::post('/{university_code}/buy-product', 'UserController@buyProduct');

設法修復它,我更改了路由文件並在單擊按鈕時將其刪除。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM