【建站系列教程】3.2、ajax使用精讲
【建站系列教程】3.2、ajax介绍
- ajax的应用场景
- 1、form表单实现无跳转提交
- 2、ajax局部刷新代替刷新网页
- ajax的通俗介绍
- ajax的基本用法
- ajax的ES写法
写在前面:大家好,我是热爱编程的
小泽
。
【建站系列教程】是我的亲身建站经历写给广大建站同胞们的教学博客。
喜欢的话点个赞吧~ 评论区欢迎交流讨论~
ajax仍然是站长必会的一个知识,但是在我看来,ajax还是有很多安全性的问题,安全性问题,我会在下一篇博客进行总结。
ajax的应用场景
1、form表单实现无跳转提交
一般情况下,form表单的语法为:
<form action='server.php' methon='POST'><input ……<button type='submit'>submit</button></form>
每当点击按钮submit之后,本页面会跳转到server.php页面,由server.php文件处理数据,之后再由server.php文件里面的代码执行跳转到原来页面。
因为每次提交都会跳转到php文件,然后再跳转回来很影响体验。所以现在提出一个需求,点击按钮,不跳转执行php文件。
ajax能实现。
2、ajax局部刷新代替刷新网页
很多时候,一些更改之后的数据都是需要用户刷新之后才能显示,现在可以实现在网页里面局部刷新。
ajax能实现。
ajax的通俗介绍
ajax全称是Asynchronous JavaScript And XML,让数据在后台进行异步传输。再通俗一点地说,我们可以使用js的ajax技术直接请求服务器上的内容,而不是必须使用php等后端语言。
需要注意的是,ajax有js原生版本的,也有jquery版本的,还有其他版本。ajax只是对浏览器js脚本的XMLHttpRequest 对象 (异步的与服务器交换数据)等的封装,并不是新的技术。
ajax的基本用法
这里推荐jq的ajax,用习惯了。只要js标签引入了jq就能使用jq的ajax。
给出最常用的写法:
$.ajax({ url: "http://www.xxx.com/xxx", //请求的urlcontentType:'json',data:{account:'123',password:'123'},success: function(data){console.log(data);//data为服务器返回的数据},error:function(){}});
下面给出我总结的ajax比较常用的参数:血泪史!debug几年的心得
实用参数 一 | 描述 |
---|---|
async |
类型:布尔型 默认值: true。 默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。 |
【注】:参数async涉及到一个知识点。我们一般是在ajax的success回调函数中拿数据。但是如果我们要是在ajax之外使用数据,那么就会报错。见下图一:
控制台输出结果为:
0
2
【原因】:在一个代码块中(上图的getInfor函数),ajax的success回调函数是最后最后执行的。所以在最下面的console.log(infor)是拿不到data数据的,只能在success回调函数中来使用数据。
那么如何解决这一问题?
这个时候,就需要用到参数async。把async设置为true,改为同步,这样在ajax外也能拿到success回调函数的数据了。
实用参数 二 | 描述 |
---|---|
dataType |
“xml”: 返回 XML 文档 "html": 返回纯文本 HTML 信息 "script": 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了 “cache” 参数。注意:在远程请求时(不在同一个域下),所有 POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载) “json”: 返回 JSON 数据 。 “jsonp”: JSONP 格式 "text": 返回纯文本字符串 |
【注】:dataType也是常用的参数。其中,json、jsonp、xml最为常用,至于如何解析json和xml格式的数据,大家可以翻一下我的博客,里面有。这里也有一个特别重要的点!!
跨域解决方案之一。
有时候,用json格式去请求api,总是报跨域的错,这个时候把json改成jsonp,立马解决。
实用参数三四五 | 描述 |
---|---|
type |
类型:String 默认值: “GET”。可选值有:GET、PUT、POST、DALETE |
error | 类型:Function 失败的回调函数 |
success | 类型:Function 成功的回调函数,用于拿服务器返回的数据。 |
ajax的ES写法
介绍一下ajax的ES6的写法,用来装13……
给出最常用的写法:
$.ajax({ url: "http://www.xxx.com/xxx", //请求的urlcontentType:'json',data:{account:'123',password:'123'},success: (data)=>{console.log(data);//data为服务器返回的数据},error:()=>{}});
【建站系列教程】3.2、ajax使用精讲相关推荐
- 【建站系列教程】3、建站基本技术介绍
[建站系列教程]3.写网页基本技术介绍 摘要 html.css.js jQuery ui框架 bootstrap jQuery-ui vue的ui 后端 采用ajax 或者 php cookie也可以 ...
- 【建站系列教程】2.3、分享一些小说的api接口
[建站系列教程]2.3.分享一些小说的api接口 一.追书神器api 二.资源二api 三.宜搜api 四.结语 写在前面:大家好,我是热爱编程的小泽. [建站系列教程]是我的亲身建站经历写给广大建站 ...
- 【建站系列教程】7、SEO优化之meta标签【最后一篇】
[建站系列教程]7.SEO优化之meta标签[进阶] 写在前面:大家好,我是热爱编程的小泽. [建站系列教程]是我的亲身建站经历写给广大建站同胞们的教学博客. 喜欢的话点个赞吧~ 评论区欢迎交流讨论~ ...
- 【建站系列教程】6、.htaccess文件的url重写规则-网页伪静态化
[建站系列教程]6..htaccess文件的url重写规则-网页伪静态化 如何创建.htaccess文件? .htaccess是什么 htaccess语法教程 写在前面:大家好,我是热爱编程的小泽. ...
- 【建站系列教程】5、谈一谈网站的静态化
[建站系列教程]5.谈一谈网站的静态化[进阶] 动态页面?静态页面?伪静态页面? 三个页面有何优缺点? 为什么要让网页静态化 如何网页伪静态化? 写在前面:大家好,我是热爱编程的小泽. [建站系列教程 ...
- 【建站系列教程】4、还不知道SEO你就OUT了
[建站系列教程]4.还不知道SEO你就OUT了[进阶] SEO的使用背景 SEO到底是什么?SEO会对网站做哪些操作? 对于程序员来说,代码优化方向的SEO能做哪些? 最后,我们才说SEO的原理 写在 ...
- 【建站系列教程】3.1、cookie介绍
[建站系列教程]3.1.cookie介绍 cookie的应用场景 1 小说网站的字体.颜色.背景颜色设置 2 隐藏url里面的参数 cookie的通俗介绍 cookie的基本用法 js版本 jQuer ...
- 【建站系列教程】2.2、fiddler手机抓包教程
[建站系列教程]2.2.fiddler手机抓包教程 (全网最良心.实用教程) fiddler手机抓包原理 步骤摘要 详细步骤 1. 安装fiddler.修改配置 2. 电脑和手机连上同一个wifi 3 ...
- 【建站系列教程】2.1、fiddler电脑抓包教程
[建站系列教程]2.1.fiddler电脑抓包教程 (全网最良心.实用教程) 简介 工作原理 主界面 使用前配置 最常使用功能 1 监控请求 2 模拟请求(重点) 3 Fiddler中保存会话 4 F ...
最新文章
- 滴滴自动驾驶,现在是一个怎样的“富二代”创业项目?
- CRM WebClient UI里product search上下文节点渲染逻辑
- [HNOI2010] 城市建设_动态最小生成树(Dynamic_MST)
- Daily Report 2012.10.30 刘宇翔
- 阶段5 3.微服务项目【学成在线】_day02 CMS前端开发_21-CMS前端页面查询开发-Api调用...
- 计算机网络性能常见计算公式
- rtlinux linux实时补丁,(九)RTLinux补丁以及cyclictest
- mermaid 饼图使用指南
- 智慧社区的现状分析及发展前景
- #define 喵 int_骚男携李佳航做客LOL全球总决赛半决赛官方评论席!决赛包机邀粉丝线下一同观战/应援LPL!舞小喵组女团49万人围观/阿酱猪周年庆...
- 基于JAVA计算机在线学习管理系统-计算机毕业设计源码+系统+mysql数据库+lw文档+部署
- Spring 系列:Spring AOP 中@Pointcut的用法(多个Pointcut)
- HP EVA8400删除VDISK后数据恢复过程分步整理
- springboot集成layui框架程序示例
- 图片文件转base64和base64转图片文件
- PHP常量修饰符是什么,php const常量修饰符使用方法
- 微服务之间的服务治理 方案
- java set集合元素_Java面试题10(如何取到set集合的第一个元素)
- java定时任务TimerTask与scheduleAtFixedRate
- wp10手机不能连接微软服务器,微软更新WP10系统 力证他们没有放弃
热门文章
- HTML中div标签的一个简单的使用和介绍
- tf.stack与tf.unstack
- 设置Win可远程访问服务器jupyter notebook
- python与mongo_MongoDB与Python的交互
- composer更新_深入学习Composer原理(四)
- 服务器崩溃日志 | 误删 OpenSSL 的那点事
- 聊一聊 Python 安装中的 --enable-shared
- karyoploteR: 基因组数据可视化 R 包
- 在线作图|差异柱状图(组内)
- 工作后,拉开你和同龄人差距的,不是出身,不是努力,而是……