JQuery Ajax实例

           JQuery在异步提交方面封装的很好,直接用Ajax非常麻烦,JQuery大大简化了我们的操作,不用考虑浏览器的差异了。

    一、ajax的一般格式

$.ajax({
 
     type: 'POST',
 
     url: url ,
 
     data: data ,
 
     success: success ,
 
     dataType: dataType
 
});

       二、参数描述

       url:必需,要求为String类型的参数,(默认为当前页地址)规定把请求发送到的url

       type:要求为String类型的参数,请求方式主要为为post或get(默认为get)。put和delete也可使用,但仅部分浏览器支持

       timeout:要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局设置。

       async:要求为Boolean类型的参数,默认设置为TRUE,所有请求均为异步请求。false为同步

       cache:要求为Boolean类型的参数,默认为TRUE(当dataType为script时,默认为false)。设置false将不会从浏览器缓存中加载请求信息。

       data:要求为object或String类型的参数,是发送到服务器的数据。如果已经不是字符串,将自动转换为字符串格式。get请求中将附加在url后。防止这种自动转换,可以查看processData选项。对象必须为键值对格式,例如{fool:"bar1",foo2:"bar2"}转换为&fool=bar1&fool=bar2。如果是数组,JQuery将自动为不同值对应就同一个名称。例如{foo:["bar1","bar2"]}转换为&foo=bar1&foo=bar2。

       dateType:要求为String类型的参数,预期服务器返回的数据类型。如果不指定,默认执行智能判断(xml、json、text、html等)

       success:要求为Function类型的参数,请求成功后调用的回调函数,有两个参数。(1)由服务器返回,并根据dataType参数进行处理后的数据。(2)描述状态的字符串

 function(data, textStatus){
    //data可能是xmlDoc、jsonObj、html、text等等
    this;  //调用本次ajax请求时传递的options参数
       error:要求为Function类型的参数,请求失败时被调用的函数。该函数有3个参数,即XMLHttpRequest对象、错误信息、捕获的错误对象(可选)
function(XMLHttpRequest, textStatus, errorThrown){
    //通常情况下textStatus和errorThrown只有其中一个包含信息
    this;   //调用本次ajax请求时传递的options参数
   }
   三、注意

       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);    
        } 
    });







  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 22
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 22
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值