最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

jquery ajax異步提交表單數(shù)據(jù)的方法

 更新時間:2017年10月27日 17:15:59   作者:偷酒的貓  
這篇文章主要為大家詳細(xì)介紹了jquery ajax異步提交表單數(shù)據(jù)的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下

使用jquery的ajax方法可以異步提交表單,成功后后臺返回json數(shù)據(jù),回調(diào)函數(shù)處理,可以不用刷新頁面,達(dá)到異步的目的;

處理表單的數(shù)據(jù)可以用serialize()方法進(jìn)行序列化,而如果提交的數(shù)據(jù)包括文件流的話,就需要使用 FormData對象:

不帶文件的表單數(shù)據(jù)使用:var data = $(form).serialize();

帶文件的表單數(shù)據(jù)使用:   var  data = new FormData($(form)[0]);

一、不帶文件的ajax提交數(shù)據(jù):

html:form表單

 <form id="addForm" action="${pageContext.request.contextPath}/admin/saveAdd" method="post">    
  <input type="text" name="name" placeholder="請輸入名字" />
  <input type="password" name="password" placeholder="密碼"/>
 </form>
<button type="button" id="submitAdd">確認(rèn)</button> 

jquery 異步處理

 $("#submitAdd").click(function(){
    
   var targetUrl = $("#addForm").attr("action");    
   var data = $("#addForm").serialize();     
    $.ajax({ 
     type:'post',  
     url:targetUrl, 
     cache: false,
     data:data,  
     dataType:'json', 
     success:function(data){      
       alert('success');
     },
     error:function(){ 
      alert("請求失敗")
     }
    })
    
 })

 

二、帶文件的ajax提交數(shù)據(jù):

 html:form表單

 有文件上傳的form表單需要在<form>標(biāo)簽里加入 enctype="multipart/form-data"屬性 :

<form id="addForm" action="${pageContext.request.contextPath}/admin/saveAdd" method="post"enctype=" multipart/form-data">    
  <input type="text" name="name" placeholder="請輸入名字" />
  <input type="password" name="password" placeholder="密碼"/>
  <input type="file" name="avatar" />
 </form>
<button type="button" id="submitAdd">確認(rèn)</button>

 jquery 異步處理

$("#submitAdd").click(function(){
    
   var targetUrl = $("#addForm").attr("action");    
   var data = new FormData($( "#addForm" )[0]);     
    $.ajax({ 
     type:'post',  
     url:targetUrl, 
     cache: false,    //上傳文件不需緩存
     processData: false, //需設(shè)置為false。因為data值是FormData對象,不需要對數(shù)據(jù)做處理
     contentType: false, //需設(shè)置為false。因為是FormData對象,且已經(jīng)聲明了屬性enctype="multipart/form-data"
     data:data,  
     dataType:'json', 
     success:function(data){      
       alert('success');
     },
     error:function(){ 
      alert("請求失敗")
     }
    })
    
 })

上面是用<form>表單來構(gòu)建FormData對象,如果沒有<form>表單處理方式如下:

html:沒有form表單

<div id="uploadFile">
 <input id="file" name="avatar" type="file"/>
 <button id="upload" data-url="/admin/upload" type="button">上傳頭像</button>
</div>

jquery異步處理:

$("#upload").click(function(){
    
   var targetUrl = $(this).attr("data-url");    
   var data = new FormData();
   //FormData對象加入?yún)?shù)
   data.append('file', $('#file')[0].files[0]); //'file' 為參數(shù)名,$('#file')[0].files[0])獲取上傳的文件,如果需上傳多個文件,要在<input>標(biāo)簽加上屬性multiple    
    $.ajax({ 
     type:'post',  
     url:targetUrl, 
     cache: false,    
     processData: false, 
     contentType: false, 
     data:data,  
     dataType:'json', 
     success:function(data){      
       alert('success');
     },
     error:function(){ 
      alert("請求失敗")
     }
    })
    
 })

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

苍南县| 顺平县| 延长县| 交城县| 临泽县| 丹寨县| 峡江县| 海晏县| 南雄市| 唐河县| 肇源县| 洪湖市| 峨眉山市| 于都县| 大姚县| 富源县| 民县| 稷山县| 桂阳县| 长乐市| 乐都县| 潼关县| 黄梅县| 博乐市| 胶南市| 璧山县| 三河市| 屯留县| 静海县| 五家渠市| 大城县| 元朗区| 呼伦贝尔市| 江源县| 临猗县| 河西区| 旬阳县| 香河县| 屏山县| 章丘市| 汝城县|