//定义一个公众处理ajax的方法
    function handelAjax(url,method,parm,callback) {
        $.ajax({
            url:url,
            type:method,
            dataType:'json',
            data:pram,
            success:function(data) {
                callback(data);
            },
            error:function(err) {
                alert(err);
            }
        })
    }
//实现查询
    handelAjax('/user/search','post',{name:'wes'},function(data) {
    //成功后的操作
        console.log('data: ',data);
    });
View Code

ajax的异步:现在和将来:

  现在发送一个异步的ajax,然后在将来才能得到返回的结果。从现在到将来的“等待”,最简单的办法(不是唯一的)是使用一个回调函数。

  //ajax是某个库提供的函数:

  ajax('www.baidu.com",function mycallback(data){consloe.log(data);  //这里得到了一些数据  }

♠ 注意:在技术上可以实现发送ajax的同步请求,但是,在任何情况下都不应该使用这种方式,因为它会锁定浏览器UI(按钮,菜单,滚动条等),并阻塞所有用户的交互。所以一定要避免。

其中ajax跳入error函数的原因:

出现任何错误都会跳到error函数里去;

举例说明错误的原因:

1.URL路径有问题

  路径里面不能有中文

2.传递的参数有问题

  参数必须是ajax支持的编码格式,如:用JSON.parm(),JSON.stringify()等

3.data不能为空

  即使不传值也要传一个"{}"

4.dataType

  后台传入的dataType和前台写的不一致

5.async请求同步异步的问题

  async默认请求方式是true(异步请求),如果想一个ajax请求完成之后再去请求另一个ajax,需要将async设置为false;

  例如,你用post请求传值到另一个页面后台,但是页面一加载你的ajax就已经执行过了,传值接收是在后台才完成的,这时候就请求不到数据,所以可以考虑把ajax请求改为同步试试。

关于其中ajax跳入error函数的原因参考了网上的一篇博客

 

posted on 2017-10-13 00:26  sandy.simple  阅读(2517)  评论(0编辑  收藏  举报