AJAX应用中必须要掌握的重点知识(分享)_AJAX相关

AJAX是什么?

是Asynchronous Javascript And XML的首字母的缩写, 它不是一门的新的语言,而是对现有技术的综合利用。 其本质是在HTTP协议的基础上以异步的方式与服务器进行通信。

异步的概念?

指某段程序执行时不会阻塞其它程序执行,其表现形式为程序的执行顺序不依赖程序本身的书写顺序,相反则为同步。

异步的作用?

其优势在于不阻塞程序的执行,从而提升整体执行效率。

AJAX的核心?

XMLHTTPRequest,简写XHR,Xml可扩展标记语言,Http超文本传输协议,Request请求。XMLHttpRequest对象可以在不向服务器提交整个页面的情况下,实现局部更新网页。XMLHttpRequest 对象提供了对 HTTP 协议的完全的访问,包括做出 POST 和 HEAD 请求以及普通的 GET 请求的能力。XMLHttpRequest 可以同步或异步返回 Web 服务器的响应,并且能以文本或者一个 DOM 文档形式返回内容。它可以接收任何形式的文本文档,是 AJAX 的 Web 应用程序架构的一项关键功能。

前文说到XMLHTTPRequest可以接收任何形式的文档,那么就不得不提到在网络传输中常用的两个数据格式。

两种常用的数据格式xml和JSON?

xml:

xml的定义:可扩展标记语言,是一种用于标记电子文件使其具有结构性的标记语言。

xml的规范:

1、必须有一个根元素
2、不可有空格、不可以数字或.开头、大小写敏感
3、不可交叉嵌套
4、属性双引号(浏览器自动修正成双引号了)
5、特殊符号要使用实体
6、注释和HTML一样

虽然可以描述和传输复杂数据,但是其解析过于复杂并且体积较大,所以实现开发已经很少使用了。

xml使用步骤简述:

由于xml是DOM对象,可以直接DOM方法,

1、var xml=xhr.responseXML;获取XML(PHP给的接口)

2、var items=xml.querySelector('item');获取xml的文档结构

3、字符串拼接

3.1、初始化var html='';

3.2、遍历for(){获取数据var item=item[i],}拼接html+='标签+数据'

4、渲染document.querySelector('tbody').innerHTHML=html

JSON:

JSON定义:JavaScript Object Notation,另一种轻量级的文本数据交换格式,独立于语言。

JSON的规范:

1、数据在名称/值对中
2、数据由逗号分隔(最后一个健/值对不能带逗号)
3、花括号保存对象方括号保存数组
4、使用双引号

JSON的跨语言解析:

JSON数据在不同语言进行传输时,类型为字符串,不同的语言各自也都对应有解析方法,需要解析完成后才能读取。

1、PHP解析方法

数组转json字符 json_encode->$json_array = json_encode($array);

json字符转成数组 json_decode->$array_json = json_decode($json_array);

2、Javascript 解析方法

字符串转对象parse->var jsonObj=JSON.parse(jsonStr);

对象转字符串stringify->var jsonStr=JSON.stringify(jsonObj);

tips:JSON兼容处理引用json2.js

XMLHttpRequest中的事件监听onreadystatechange?

时间: 2024-09-19 20:38:24

AJAX应用中必须要掌握的重点知识(分享)_AJAX相关的相关文章

切记ajax中要带上AntiForgeryToken防止CSRF攻击_AJAX相关

经常看到在项目中ajax post数据到服务器不加防伪标记,造成CSRF攻击 在Asp.net Mvc里加入防伪标记很简单在表单中加入Html.AntiForgeryToken()即可. Html.AntiForgeryToken()会生成一对加密的字符串,分别存放在Cookies 和 input 中. 我们在ajax post中也带上AntiForgeryToken @model WebApplication1.Controllers.Person @{ ViewBag.Title = "In

JQuery ajax返回JSON时的处理方式 (三种方式)_AJAX相关

最近在使用JQuery的ajax方法时,要求返回的数据为json数据,在处理的过程中遇到下面的几个问题,那就是采用不同的方式来生成json数据的时候,在$.ajax方法中应该是如何来处理的,下面依次来进行说明,由于本人使用的是asp.net,所以处理的页面都是采用.net来做的!其他的方式应该是相同的吧         一.JSON的一些基础知识. JSON中对象通过"{}"来标识,一个"{}"代表一个对象,如{"AreaId":"12

使用Ajax实时检测"用户名、邮箱等"是否已经存在_AJAX相关

一个网站采用Ajax技术,不仅可以改善网站的用户体验性,而且大大节约了宝贵的带宽,减轻了服务器负荷(不再需要交互整个网页内容,而是局部). 今天分享一个"利用Ajax技术来检测用户名是否存在"的例子. 利用Ajax技术来检测用户名是否存在的原理流程图: 最终结果截图: 复制代码 代码如下:  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.or

IE浏览器与FF浏览器关于Ajax传递参数值为中文时的区别实例分析_AJAX相关

本文实例讲述了IE浏览器与FF浏览器关于Ajax传递参数值为中文时的区别.分享给大家供大家参考,具体如下: 前面介绍了<Javascript基于AJAX回调函数传递参数>,这里主要来分析一下ajax传递中文参数过程中针对不同浏览器的乱码处理方法. Ajax传递参数为中文时出现乱码,我遇到的情况是: 1.我的数据库连接 编码为 GB2312,latin1_swedish_ci 2.php 文件编码格式为 UTF-8,浏览器显示编码为 : UTF-8 3.我的页面显示方式为两种: 一)页面加载时自

ASP+AJAX+ACCESS数据库实例讲解三个步骤分享_AJAX相关

看完本篇ajax实例教程,我相信你也可以轻松做出一个初级的AJAX应用. 你也可以直接访问:http://www.jb51.net/codes/57017.html 下载ajax教程的源码示例. 好,下面我们就始一步步让你了解AJAX+ASP基础应用,我们将分三步讲解,如下. 1. 前台AJAX代码(javascript)的创建. 2. 后台服务端ASP AJAX代码的编写. 3. ASP+AJAX+数据库的实例演示及讲解. 第一步:前台AJAX代码(javascript)的创建. 我们先创建一

Ajax实现静态刷新页面过程带加载旋转图片_AJAX相关

复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat=

Ajax获取数据然后显示在页面的实现方法_AJAX相关

主要功能流程介绍 循环获取列表数据 点击列表数据进入详情页 点击报名参加弹出报名成功提示框 点击提示框中的确定按钮,跳回列表页 代码实现流程和解说 一.列表页 1.访问链接list.php时判断是pc端还是客户端 $user_agent_arr = mall_get_user_agent_arr(); if(MALL_UA_IS_PC == 1) { //****************** pc版 ****************** include_once './list-pc.php';

jQuery+Ajax+PHP实现“喜欢”评级功能附源码下载_AJAX相关

本文章来给大家介绍一个jQuery+Ajax+PHP实现"喜欢"评级功能代码,用户点击页面中自己喜欢的图片上的红心按钮时,前端页面向后台发送一个ajax请求,后台PHP程序接收请求后,查询IP库中是否已经有该用户的点击记录,如果没有,则将对应的数值+1,同时将该用户IP信息写入IP库,反之则告诉用户已经"喜欢过了".    源码下载地址:http://xiazai.jb51.net/201509/yuanma/loveit(jb51.net).rar 实现过程 本文

JavaScript基于Ajax实现不刷新在网页上动态显示文件内容_AJAX相关

本文实例讲述了JavaScript基于Ajax实现不刷新在网页上动态显示文件内容的方法.分享给大家供大家参考.具体如下: 下面的JS代码是一个最基础的JS的ajax实现,可以动态显示服务器上的文件ajax_info.txt文件的内容 <!DOCTYPE html> <html> <head> <title>sharejs.com</title> <script> function loadXMLDoc() { var xmlhttp;