ajax提交url 與ajax提交表單的比較

來源:互聯網
上載者:User

http://wawa129.iteye.com/blog/1488221

 

 

1:ajax自已構造一個url,這種方式傳參數要用Data,不能用於表單提交。 
   例: 
         function createHtml(id){ 
            $("#reloading").show(); 
             //edit_bg是個div,提交時顯示,這樣可以使背景頁面不能操作。 
            $("#edit_bg").show(); 
            $.ajax({ 
            type: "POST", 
            url: "pageAction!createHtml.action", 
            data: "id="+id, 
            success: function(data){ 
            $("#reloading").hide(); 
            $("#edit_bg").hide(); 
            if(data == "true"){ 
            alert("操作成功。"); 
              }else{ 
                    alert("操作失敗,請聯絡管理員!"); 
                    } 
                    }   //操作成功後的操作 
                  });  
                   } 

2:ajax提交表單,這對於大資料轉送非常有用,如使用者註冊,資訊量非常大,用ajax提交表單,頁面比較美觀 
   但是,對於ajax提交表單,我們還得引入一個js,即:jquery.form.js" 

    例:function uploadFile(){ 
      
      $("#reloading").show(); 
      $("#edit_bg").show(); 
       //form1為表單名 
      $("#form1").ajaxSubmit({ 
      type: "POST", 
      success: function(data){ 
      $("#reloading").hide(); 
      $("#edit_bg").hide(); 
      if(data.indexOf("true")!=-1){ 
      alert("操作成功。"); 
      }else{ 
      alert(data); 
       alert("操作失敗,請聯絡管理員!"); 
      } 
        }   //操作成功後的操作 
       });  
         } 

3: 2項中ajax提交表單雖然可以正確操作,但返回的data資料有問題,頁面得不到處理結果。如下的代碼對ajax提交表單進行了糾正 

    function submitForm(){ 
$('#form1').ajaxSubmit(ajaxOptionsNew);  
       } 
    
   var ajaxOptionsNew = {  
                beforeSubmit : fn_check_form,  
                success : showResponse,  
                url : "costAtion!save2.action",  
                error : function(XMLResponse) {  
                    alert(XMLResponse.responseText);   
                    alert('操作失敗!'); 
                   // window.location.reload(); 
                }  
            };  

function fn_check_form(){ 
    if($("#Name").val() == ""){ 
alert("人不可為空"); 
$("#Name").focus(); 
return false; 

       } 

  function showResponse(responseText) {  
               try{  
                //alert(responseText); 
                   if(responseText == 'true'){  
                        alert('操作成功!'); 
                        window.location.reload(); 
                   } 
                   else if(responseText == 'paramFalse') 
                   { 
                    alert("必填參數不可為空!") 
                   } 
                   else if(responseText == 'timeError') 
                   { 
                     alert("出發時間不能大於報銷時間!"); 
                   } 
                   else{  
                        alert('操作失敗!');  
                     //   window.location.reload(); 
                    }  
                }catch(e){alert(e.message);}  
        }  

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.