1. 程式人生 > >jax 例項 ($.ajax、$.post、$.get)

jax 例項 ($.ajax、$.post、$.get)

Jquery在非同步提交方面封裝的很好,直接用AJAX非常麻煩,Jquery大大簡化了我們的操作,不用考慮瀏覽器的詫異了。

推薦一篇不錯的jQuery Ajax 例項文章,忘記了可以去看看,地址為:

$.post、$.get是一些簡單的方法,如果要處理複雜的邏輯,還是需要用到jQuery.ajax()

一、$.ajax的一般格式

$.ajax({

     type: 'POST',

     url: url ,

    data: data ,

    success: success ,

    dataType: dataType

});

二、$.ajax的引數描述

引數 描述

url 必需。規定把請求傳送到哪個 URL。
data 可選。對映或字串值。規定連同請求傳送到伺服器的資料。
success(data, textStatus, jqXHR) 可選。請求成功時執行的回撥函式。
dataType

可選。規定預期的伺服器響應的資料型別。

預設執行智慧判斷(xml、json、script 或 html)。

三、$.ajax需要注意的一些地方:

  1.data主要方式有三種,html拼接的,json陣列,form表單經serialize()序列化的;通過dataType指定,不指定智慧判斷。

  2.$.ajax只提交form以文字方式,如果非同步提交包含<file>上傳是傳過不過去,需要使用jquery.form.js的$.ajaxSubmit

//1.$.ajax帶json資料的非同步請求 var aj = $.ajax( {       url:'productManager_reverseUpdate',// 跳轉到 action       data:{                selRollBack : selRollBack,                selOperatorsCode : selOperatorsCode,                PROVINCECODE : PROVINCECODE,                pass2 : pass2       },       type:'post',       cache:false,       dataType:'json',       success:function(data) {           if(data.msg =="true" ){               // view("修改成功!");               alert("修改成功!");               window.location.reload();           }else{               view(data.msg);           }        },        error : function() {             // view("異常!");             alert("異常!");        }   });

//2.$.ajax序列化表格內容為字串的非同步請求 function noTips(){       var formParam = $("#form1").serialize();//序列化表格內容為字串       $.ajax({           type:'post',               url:'Notice_noTipsNotice',           data:formParam,           cache:false,           dataType:'json',           success:function(data){           }       });   }  

//3.$.ajax拼接url的非同步請求 var yz=$.ajax({        type:'post',        url:'validatePwd2_checkPwd2?password2='+password2,        data:{},        cache:false,        dataType:'json',        success:function(data){             if( data.msg =="false" ) //伺服器返回false,就將validatePassword2的值改為pwd2Error,這是非同步,需要考慮返回時間             {                  textPassword2.html("<font color='red'>業務密碼不正確!</font>");                  $("#validatePassword2").val("pwd2Error");                  checkPassword2 = false;                  return;              }         },         error:function(){}   }); 

//4.$.ajax拼接data的非同步請求 $.ajax({        url:'<%=request.getContextPath()%>/kc/kc_checkMerNameUnique.action',        type:'post',        data:'merName='+values,        async : false, //預設為true 非同步        error:function(){           alert('error');        },        success:function(data){           $("#"+divs).html(data);        } });