说明:
(0) 本篇博客,写的有点乱;可能以后回头看,就会觉得这篇文章逻辑论乱~~(不过,这篇博客目前起码能勉强自洽)
(1) 目前来看,Ajax请求的使用场景主要区分点有两个;
● 【页面加载的同时,发起ajax请求】还是【页面加载完成后,如通过点击页面的按钮,来发起ajax请求】;
● 【返回的JSON数据需要显示在页面上】还是【返回的JSON不需要显示在页面上,我们只是根据JSON数据的不同,来做不同的下一步决策】;
不同的场景,我们的做法存在些许差异;
(1)第一次接触单纯的Ajax:可以参考:
●【Ajax一:Ajax简介;Ajax实现的三个步骤➡简单演示;】;
●【Ajax三:同步和异步的区别】;
● Ajax介绍
说明:
(1) 通过这几篇博客,可以 对Ajax有个基本的认识;
(2) 但是,这几篇博客介绍的内容是单纯的、最原始的Ajax,其编写会比较繁杂;我们在实际开发中,不会这么写;而是利用JQuery或者Vue等封装的框架,来更高效的开发Ajax;
(2)然后,JQuery作为一个以JavaScript为基础的plugin,即JQuery可以简化JavaScript的开发;JQuery也可以简化Ajax的开发;可以参考:
● (https://blog.csdn.net/csucsgoat/article/details/113377602
这篇博客介绍了jQuery简化Ajax开发的SOP;了解了【页面就绪函数】;演示了请求成功success和请求失败error的处理方式;
说明:
(1) 这篇博客介绍了 jQuery简化Ajax开发的SOP;
(2) 因为在这篇博客的这个案例中,我们希望在页面加载的时候,ajax请求就向后端发起请求,然后把响应的JSON字符串显示在页面上,所以,我们**把ajax请求的 <script>块,放在了<head标签中;**即,是 通过【页面就绪函数】来演示Ajax的; (即,页面就绪函数的意思是,当我们前端页面加载的时候,同时执行这个函数;也就是,当我们前端页面加载的同时,向后端发起Ajax请求,并将请求的数据渲染到前端页面上;也就是,这个案例中的Ajax实际作用是,在页面初始化的时候起作用)
即,当我们遇到【需要在页面初次加载,即页面初始化的时候,就需要向后端发起Ajax请求的情况时】,可以参考本案例;
(3) 同时,本案例也体现了这样的一个点:前端通过Ajax向后端发起请求,然后服务器返回了一些JSON数据,如果我们想把这些JSON数据显示在页面上:就需要,把这些JSON数据转换为HTML,然后动态的加载到对应的数据容器中;(这是在日常开发中,比较普遍采取的做法)
(4) 演示了请求成功success和请求失败error的处理方式;
(5) 通过【[jQuery中Ajax函数:.post()、.ajax()、.post\(\)、.get()的使用、区别;”)】,能帮助理解jQuery简化Ajax的更详细的内容;
(3)然后,在【(12)MKOA系统(Mybatis项目案例,比较重要!)】这个专栏中,介绍了非页面就绪函数的使用方式;
● 【OA系统九:用户登录二:实现用户登录的后台逻辑代码;完善前台登录页的提交和校验功能;】
说明:
(1) 因为这个案例是登录;登录的意思就是,点击页面上的一个按钮,然后再发起ajax请求;即,这个ajax请求不用随着页面的加载而同时进行;所以,我们就不需要把这ajax的<script>写在<head>中了,也就是不需要写成页面就绪函数的形式了;而是,把ajax的<script>写在<body>中了;
那么,当我们以后遇到【点击页面的某个按钮,向后端发起Ajax请求的情况时】,可以参考本案例;
(2) 同时,在登录这个场景下,后端返回JSON数据是登录成功与否的信息;我们不需要把这些信息显示在页面上,而是根据这些信息的不同,采取不同的策略;(比如,如果登录成功,就从登录页跳转到系统首页;如果登录失败,则弹窗提示登录失败);
(3) 在【(12)MKOA系统(Mybatis项目案例,比较重要!)】专栏的其他地方,也大量应用了Ajax技术,其中也有复杂的数据动态提取等内容;如有需要,可以去快速参考;
(4) 同时,在 【SSM开发书评网13:图书列表分页及查询三:图书分页查询(2);(Controller部分;前端部分开发了一半)】以及本专栏的后续博客中,也会大量应用Ajax技术;
随时补充……