Ajax基础

2016-05-25  本文已影响85人  柯良勇

ajax

前后端开发联调需要注意哪些事情?后端接口完成前如何 mock 数据?

点击按钮,使用 ajax 获取数据,如何在数据到来之前防止重复点击?

用js封装了一个 ajax 函数

function ajax(opts){
  var request = new  XMLHttpRequest();
  var str = '';
  for(i in opts.data){
    str += i+'='+opts.data[i]+'&';
  }
  str = str.substr(0, str.length-1); 
  if(opts.type.toLowerCase() === 'get'){
    request.open('GET', opts.url+'?'+str, true);
    request.send();
  }
  if(opt.type.toLowerCase() === 'post'){
    resuest.open('POST', opt.url, true);
    ajax.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
    request.send(str);
  }
  request.onreadystatechange=function(){
    if(request.readyState==4 && request.status==200){
      var responsetext=JSON.parse(request.responseText);
      opts.success(responsetext);
    }
    if(request.status!==200){
      opts.error();
    }
  }
}
document.querySelector('#btn').addEventListener('click', function(){
  ajax({
    url: 'getData.php',   //接口地址
    type: 'get',               // 类型, post 或者 get,
    data: {
      username: 'xiaoming',
      password: 'abcd1234'
    },
    success: function(ret){
        console.log(ret);       // {status: 0}
      },
      error: function(){
       console.log('出错了')
     }
   })
});
上一篇 下一篇

猜你喜欢

热点阅读