第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Ajax 返回 GET 請求而不是 POST

Ajax 返回 GET 請求而不是 POST

PHP
波斯汪 2023-08-19 14:21:20
我正在嘗試在 Laravel 中創(chuàng)建一個個人消息系統(tǒng),該系統(tǒng)的一部分是能夠以表單形式發(fā)送消息,而無需刷新整個頁面。我一直在關(guān)注一些 youtube 教程,這是我迄今為止的 Ajax 腳本。<form id="form{{$dm->id}}">                    {{ csrf_field() }}                    <input id="message" placeholder="Send a message" style="border-radius: 0px;" type="username" class="form-control" name="message">                    <script>                    $('form{{$dm->id}}').ready(function (){                                            $('form{{$dm->id}}').on('submit', function( event ) {                        event.preventDefault();                        $.ajax({                            type: 'post',                            url: '{{ route("sendMessage", $dm->id) }}',                            data: $('form{{$dm->id}}').serialize(),                             success: function(response){                                alert('suces')                            },                            error: function(response){                               alert('failure')                            }                        });                    });                    });                    </script>                </form>它不向控制器發(fā)送 POST 請求,而是發(fā)送 GET 請求并進(jìn)行重定向。這是我第一次使用 Ajax/Javascript,所以我不知道為什么它不起作用??刂破髂_本:public function sendM(Request $request, $id){    $validatedData = $request->validate([        'message' => 'required|string|max:255|min:4',    ]);        $dm = Dm::find($id);    $mess = new Message;    $mess->Authid = Auth::user()->id;    $mess->Userid = $dm->Userid;    $mess->Dmid = $dm->id;    $mess->message = $request->input('message');    $dm->messages()->save($mess);    $dm->touch();}路由入口:Route::post('/sendmessage/id{id}', 'SettingsController@sendM')->name('sendMessage')->middleware('verified');很感謝任何形式的幫助?。ㄗⅲ罕福绻@是非常明顯的事情)
查看完整描述

3 回答

?
catspeake

TA貢獻(xiàn)1111條經(jīng)驗 獲得超0個贊

方法的別名。如果您使用 1.9.0 之前的 jQuery 版本,則應(yīng)該使用 type。


             <form id="form{{$dm->id}}">

                    {{ csrf_field() }}

                    <input id="message" placeholder="Send a message" style="border-radius: 0px;" type="username" class="form-control" name="message">

                    <script>

                    $('form{{$dm->id}}').ready(function (){

                        

                    $('form{{$dm->id}}').on('submit', function( event ) {

                        event.preventDefault();

                        $.ajax({

                            type: 'POST', //Check your JQ version.

                            method: 'POST', //Check your JQ version.

                            contentType:"multipart/form-data; charset=utf-8",

                            //url: '{{ route("sendMessage", $dm->id) }}',

                            url: '{{ route("sendmessage", $dm->id) }}',

                            data: $('form{{$dm->id}}').serialize(), 

                            success: function(response){

                                alert('suces')

                            },

                            error: function(response){

                               alert('failure')

                            }

                        });

                    });

                    });

                    </script>

                </form>


查看完整回答
反對 回復(fù) 2023-08-19
?
搖曳的薔薇

TA貢獻(xiàn)1793條經(jīng)驗 獲得超6個贊

不確定它是否解決了您的問題,但您還必須將 csrf 令牌添加到標(biāo)頭中:


$.ajaxSetup({

   headers: {

      'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')

   }

});

(當(dāng)然,如果令牌位于元標(biāo)記中)


查看完整回答
反對 回復(fù) 2023-08-19
?
慕虎7371278

TA貢獻(xiàn)1802條經(jīng)驗 獲得超4個贊

在 $.ajax 調(diào)用中,您需要將方法設(shè)置為 post 而不是類型。


$.ajax({

        method: 'post',

        url: '{{ route("sendMessage", $dm->id) }}',

        data: $('form{{$dm->id}}').serialize(), 

        success: function(response){

          alert('suces')

        },

        error: function(response){

        alert('failure')

        }

       });

順便說一句,jquery 通常被認(rèn)為正在被淘汰。您可能想了解 jquery 的一些替代方案,例如 vue.js 或 React。具體到ajax方面,Laravel內(nèi)置了axios支持。


查看完整回答
反對 回復(fù) 2023-08-19
  • 3 回答
  • 0 關(guān)注
  • 161 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號