• 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

    四、$.ajax我的实际应用例子
    Js代码
    //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);
    }
    });

  • 相关阅读:
    前端知识体系(一)浏览器机制以及进程线程的关系
    页面之间的通信
    DOM
    浏览器内核及浏览器对象
    js正则表达式
    setTimeout和setInterval
    原生js操作cookie
    apply、call、bind方法调用
    一个简单的hexo搭建博客网站的故事
    debug for bin runtime error
  • 原文地址:https://www.cnblogs.com/daohangtaiqian/p/5067246.html
Copyright © 2020-2023  润新知