A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 杰哥,我就服你 于 2018-9-13 13:50 编辑

Ajax的了解
        Ajax(即异步 JavaScript 和 XML)是一种 Web 应用程序开发的手段,它采用客户端脚本与 Web 服务器交换数据。所以,不必采用会中断交互的完整页面刷新,就可以动态地更新 Web 页面。使用 Ajax,可以创建更加丰富、更加动态的 Web 应用程序用户界面,其即时性与可用性甚至能够接近本机桌面应用程序。


Ajax的几种用法
1.直接使用$.ajax()发送请求
$.ajax使用方法
常用参数:
1、url 请求地址
2、type 请求方式,默认是'GET',常用的还有'POST'
3、dataType 设置返回的数据格式,常用的是'json'格式,也可以设置为'html'
4、data 设置发送给服务器的数据
5、success 设置请求成功后的回调函数
6、error 设置请求失败后的回调函数
7、async 设置是否异步,默认值是'true',表示异步


以前的写法:
$.ajax({
            url: '',                           -----请求url
            type: "post",                -----请求方式
            contentType: "application/json",           -----指明发送到后端的数据格式是json
            data: JSON.stringify(params),               -----把字典转成json字符串发送给服务器的数据
            headers: { "X-CSRFToken": getCookie("csrf_token")  },    -----csrf防护(非get都必填)
            success: function (result) {          -----成功后的回调函数,result是服务器传过来的json数据
                if (resp.errcode == "0") {
                ---如果视图全部执行成功,调用此处代码
                }else {
                    alert(result.errmsg); -----------------如果视图捕获异常,弹出异常信息
                }
            }
        });



新的写法(推荐):
$.ajax({
    url: '/change_data',
    type: 'GET',
    dataType: 'json',
    data:{'code':300268}
})
.done(function(dat) {
    alert(dat.name);
})
.fail(function() {
    alert('服务器超时,请重试!');
});


2.简化写法:$.get或者$.post
$.get('/api/1.0/areas', function (result) {      -------get或post方法,参数1:url,参数2:回调函数
        if (result.errcode == 0) {
             --------如果视图全部执行成功,调用此处代码
        } else {
            alert(result.errmsg) ;           --------如果视图捕获异常,弹出异常信息
        }
    })



$.post("/change_data", {'code':300268},
  function(dat){
    alert(dat.name);
});


3.发送非json数据:
$('form标签').submit(function (event) {         -----------监听表单的提交事件
        event.preventDefault()           -----取消表单默认提交方式
        $(this).ajaxSubmit({               -----模拟表单提交方式
            url: '',                                    -----请求url
            type: '',                                 -----请求类型
            headers: {'X-CSRFToken': getCookie('csrf_token')},        -----csrf防护(非get都必填)
            success: function (result) {          -----成功后的回调函数,result是服务器传过来的json数据
                if (result.errcode == 0) {  
---如果视图全部执行成功,调用此处代码
                } else {
                    alert(result.errmsg)  ;    --------如果视图捕获异常,弹出异常信息
                }
            }
        })
    })



与Ajax相关的概念:


同步和异步
现实生活中,同步指的是同时做几件事情,异步指的是做完一件事后再做另外一件事,程序中的同步和异步是把现实生活中的概念对调,也就是程序中的异步指的是现实生活中的同步,程序中的同步指的是现实生活中的异步。


局部刷新和无刷新
ajax可以实现局部刷新,也叫做无刷新,无刷新指的是整个页面不刷新,只是局部刷新,ajax可以自己发送http请求,不用通过浏览器的地址栏,所以页面整体不会刷新,ajax获取到后台数据,更新页面显示数据的部分,就做到了页面局部刷新。


数据接口
数据接口是后台程序提供的,它是一个url地址,访问这个地址,会对数据进行增、删、改、查的操作,最终会返回json格式的数据或者操作信息,格式也可以是text、xml等。


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马