程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> lavarel框架中如何使用ajax提交表單,lavarelajax

lavarel框架中如何使用ajax提交表單,lavarelajax

編輯:關於PHP編程

lavarel框架中如何使用ajax提交表單,lavarelajax


  開門見山,因為laravel以post形式提交數據時候需要加{{csrf_field()}}防止跨站攻擊,所以當你用ajax提交表單時候自然也要加

在網上看了很多的解決方式,我是用下面這種方法解決的:

1,首先在模板裡面加上一個meta  :

<meta name="_token" content="{{ csrf_token() }}"/> 

 

2,然後在ajax方法裡面加

headers: {
'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
},

 這是ajax的方法,發現了很好用的jquery的函數,$().serialize()和$().serializeArray(),代碼中我用的是後者,可以獲取form表單中的數據,並且能直接通過ajax傳輸,簡直太神奇了!!!(孤陋寡聞讓大家見笑了)

 

$(form[1]).submit(function(event){
        var data = $(form[1]).serializeArray();
        // console.log(data);
        $.ajax({
            type:'post',
            url:'/basic',
            data:data,
            headers: {
    'X-CSRF-TOKEN': $('meta[name="_token"]').attr('content')
},
            success:function(msg){
                if (msg) {
                    $('.basicEdit').hide();
                    $('.basicShow').show();
                    $('.basicShow span').html(data[1].value+' | '+data[2].value+' | '+data[3].value+' | '+data[4].value+'<br>'+data[5].value+' | '+data[6].value+' | '+data[7].value);
                }
            },
        });
        // event.preventDefault();
        
        return false;
   });

3然後在控制器方法中獲取數據了,直接$req->你的表單name就行了.

public function basic(Request $req){
      // return $req->gender;
      $uid = Auth::user()->uid;
      // return $uid;
      // $inf = new \App\Info;
      $inf = Info::where('uid',$uid)->first();
      // return $inf;
      $inf->name = $req->name;
      $inf->gender = $req->gender;
      $inf->topDegre = $req->topDegre;
      $inf->workyear = $req->workyear;
      $inf->tel = $req->tel;
      $inf->email = $req->email;
      return $inf->save()?"ok":"fail";
    }

總結下:

我覺得我說的每一步都是必須得!!!,我的回調函數裡面寫的代碼是把表單裡面獲得數據重新打印出來了,不需要的可以忽視掉,然後代碼將就看吧,一個php初學者奉上.over

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved