• 什么是ajax

AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。

Ajax包含下列技术:
基于web标准(standards-basedpresentation)XHTML+CSS的表示;
使用 DOM(Document ObjectModel)进行动态显示及交互;
使用 XML 和 XSLT 进行数据交换及相关操作;
使用 XMLHttpRequest 进行异步数据查询、检索;
使用 JavaScript 将所有的东西绑定在一起。

  • 为什么使用ajax

Ajax应用程序的优点:
1. 通过异步模式,提升了用户体验
2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用
3. Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。

ajax的缺点
1、ajax不支持浏览器back按钮。
2、安全问题 AJAX暴露了与服务器交互的细节。
3、对搜索引擎的支持比较弱。
4、破坏了程序的异常机制。
5、不容易调试。

  • AJAX最大的特点

Ajax可以实现动态不刷新(局部刷新)
就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。

  • 什么是XMLhttprequest对象

Ajax的核心是JavaScript对象XmlHttpRequest。该对象在Internet Explorer 5中首次引入,它是一种支持异步请求的技术。简而言之,XmlHttpRequest使您可以使用JavaScript向服务器提出请求并处理响应,而不阻塞用户。通过XMLHttpRequest对象,Web开发人员可以在页面加载以后进行页面的局部更新。

  • XMLHttpRequest对象的常用方法和属性

open(“method”,”URL”) 建立对服务器的调用,

第一个参数是HTTP请求    方式可以为GET,POST或任何服务器所支持的您想调用的方式。
 第二个参数是请求页面的URL。
    send()方法,发送具体请求
    abort()方法,停止当前请求
    readyState属性   请求的状态 有5个可取值0=未初始化 ,1=正在加载
    2=以加载,3=交互中,4=完成
    responseText 属性  服务器的响应,表示为一个串
    reponseXML 属性 服务器的响应,表示为XML
    status   服务器的HTTP状态码,200对应ok  400对应not found

示例:

<script type="text/javascript">
//实例化内建对象
var xhr = new XMLHttpRequest()
//发起一个请求
xhr.open('get','index.php');
//请求头 get请求可以省略
xhr.setRequestHeader('get','index.php');
//post情况下这步需要这样写
/*xhr.setRequestHeader('Content-type','application/x-www=form-urlencoded');*/
//请求主体
xhr.send(null);
//监听接收服务器请求状态
xhr.onreadystatechange = function(){
//判断请求状态和服务器的状态码
if(xhr.readyState = 4 && xhr.status == 200){
var result = document.querySelector('.result');
result.innerHTML = xhr.responseText;
}
} </script>
  • jQuery中的Ajax

    jQuery为我们提供了更强大的Ajax封装

    $.ajax({}) 可配置方式发起Ajax请求

    $.get() 以GET方式发起Ajax请求

    $.post() 以POST方式发起Ajax请求

    $('form').serialize() 序列化表单(即格式化key=val&key=val)

    url 接口地址

    type 请求方式

    timeout 请求超时

    dataType 服务器返回格式

    data 发送请求数据

    beforeSend: function () {} 请求发起前调用

    success 成功响应后调用

    error 错误响应时调用

    complete 响应完成时调用(包括成功和失败)

关于ajax的那些事的更多相关文章

  1. 关于AJAX的一些事

    在JQ中运用AJAX的操作是很舒服的一件事,一直以来我对他都有个错误的认识,直到遇见了问题才把他研究个透彻. 下面贴出两种AJAX的写法,当然都是正确的. 其一: $.ajax({ type: 'po ...

  2. AJAX操作数据

    本文使用AJAX访问数据库文件,并显示在网页中.另外还有AJAX对数据库的删除操作,网页不加载,只刷新数据. 随意使用数据库中的一张表: 使用AJAX显示表中内容,首先打入body代码: <h1 ...

  3. 对ajax基础的掌握随笔

    原始的ajax,在第一个页面定义如下: function createAjax() { var xmlhttp; if (window.ActiveXObject) xmlhttp = new Act ...

  4. scrapy实战4 GET方法抓取ajax动态页面(以糗事百科APP为例子):

    一般来说爬虫类框架抓取Ajax动态页面都是通过一些第三方的webkit库去手动执行html页面中的js代码, 最后将生产的html代码交给spider分析.本篇文章则是通过利用fiddler抓包获取j ...

  5. (二)关于ajax那些事

    哈哈,今天突然兴起,想了想自己对ajax的了解,来这里叙述下.心情好,嘿嘿嘿 ajax是一种创建交互式网页应用的网页开发技术.就是在不重新加载页面的情况下,更新部分网页. ajax原理:ajax就是相 ...

  6. 关于json.ajax ,php的那点事

    $.ajax({ type:'post'/'get'  两者选其一 url:    地址 data: "newdata="+newdata+"&olddata=& ...

  7. 说说前端那些事之ajax

    原生ajax请求 前些日子,忙着考驾照,没有时间对知识进行总结,感到十分惭愧啊,刚好趁现在有时间,做个知识总结,希望对各位有所帮助. 很多人都知道ajax是用来进行数据请求的,但是具体的请求方法会有些 ...

  8. Ajax的那点事

    Ajax中什么是同步.异步? 同步:就是用户填写完信息之后,全部提交给服务器,等待服务器的回应,是一次性全部的. 异步:当用户填写完一条信息之后,这条信息会自动向服务器提交,然后服务器响应客户端,在此 ...

  9. ajax异步请求

    做前端开发的朋友对于ajax异步更新一定印象深刻,作为刚入坑的小白,今天就和大家一起聊聊关于ajax异步请求的那点事.既然是ajax就少不了jQuery的知识,推荐大家访问www.w3school.c ...

随机推荐

  1. docker 容器管理常用命令

    Docker 容器管理: docker create -it centos //这样可以创建一个容器,但该容器并没有启动: create Create a new container 创建一个容器: ...

  2. qt介绍

    http://www.oschina.net/p/qt Qt 是一个跨平台的C++图形用户界面应用程序框架.它提供给开发者建立图形用户界面所需的功能,广泛用于开发GUI程序,也可用于开发非GUI程序. ...

  3. Codeforces 293B

    Codeforces 293B 原题 题目描述:给出一个\(n \times m\)的网格, 给定一个整数\(k\),网格上的每个数都不超过\(k\),其中有的格子是\(0\),要求把这些格子变成\( ...

  4. 合并多个Redis dump.rdb 到一个rdb的多个database

    公司的服务器上运行了多个redis,现在希望合并到一个redis,用上redis的多database特性. 在网上找了一圈发现没有比较好的工具可以进行这个处理. 看过一个redis-dump号称可以导 ...

  5. Aix 文件名补齐及aix6.1 bash安装

    Aix历史查询快捷键=>按ESC+k 设置KSH的自动补全(仅仅是文件名补全,没有命令补全)和历史命令功能 方法一: set -o vi 历史命令功能(esc -,esc +)自动补全文件名(e ...

  6. python 网页爬虫+保存图片+多线程+网络代理

    今天,又算是浪费了一天了.python爬虫,之前写过简单的版本,那个时候还不懂原理,现在算是收尾吧. 以前对网页爬虫不了解,感觉非常神奇,但是解开这面面纱,似乎里面的原理并不是很难掌握.首先,明白一个 ...

  7. JavaScript 工作必知(九)function 说起 闭包问题

    大纲 Function Caller 返回函数调用者 Callee 调用自身 作用域 闭包 function 函数格式 function getPrototyNames(o,/*optional*/ ...

  8. SQL游标+递归查询客户子客户转换率

    ALTER PROCEDURE [dbo].[Account3YearsConversion ] as DECLARE @AccountId UNIQUEIDENTIFIER , @yearbefor ...

  9. js操作cookie,js判断浏览器属性,

    在默认情况下,只有设置cookie的网页才能读取该cookie.如果想让一个页面读取另一个页面设置的cookie,必须设置cookie的路径. http://www.jb51.net/article/ ...

  10. 精读《javascript高级程序设计》笔记一——基本概念

    语法 严格模式 启用严格模式,在脚本顶部或函数内部上方添加"use strict";语句. 数据类型 typeof typeof返回undifined,boolean,number ...