AJAX 语法

2023-05-16

AJAX - 创建 XMLHttpRequest 对象

XMLHttpRequest 用于在后台与服务器交换数据。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新。

创建 XMLHttpRequest 对象

所有现代浏览器(IE7+、Firefox、Chrome、Safari 以及 Opera)均内建 XMLHttpRequest 对象。

创建 XMLHttpRequest 对象的语法:

variable=new XMLHttpRequest();

老版本的 Internet Explorer (IE5 和 IE6)使用 ActiveX 对象:

variable=new ActiveXObject("Microsoft.XMLHTTP");

为了应对所有的现代浏览器,包括 IE5 和 IE6,请检查浏览器是否支持 XMLHttpRequest 对象。如果支持,则创建 XMLHttpRequest 对象。如果不支持,则创建 ActiveXObject :

XMLHttpRequest 对象用于和服务器交换数据。


向服务器发送请求

如需将请求发送到服务器,我们使用 XMLHttpRequest 对象的 open() 和 send() 方法:

xmlhttp.open("GET","ajax_info.txt",true);
xmlhttp.send();

方法描述
open(method,url,async)

规定请求的类型、URL 以及是否异步处理请求。

  • method:请求的类型;GET 或 POST
  • url:文件在服务器上的位置
  • async:true(异步)或 false(同步)
send(string)

将请求发送到服务器。

  • string:仅用于 POST 请求

GET 还是 POST?

与 POST 相比,GET 更简单也更快,并且在大部分情况下都能用。

然而,在以下情况中,请使用 POST 请求:

  • 无法使用缓存文件(更新服务器上的文件或数据库)
  • 向服务器发送大量数据(POST 没有数据量限制)
  • 发送包含未知字符的用户输入时,POST 比 GET 更稳定也更可靠

url - 服务器上的文件

open() 方法的 url 参数是服务器上文件的地址:

xmlhttp.open("GET","ajax_test.html",true);

该文件可以是任何类型的文件,比如 .txt 和 .xml,或者服务器脚本文件,比如 .asp 和 .php (在传回响应之前,能够在服务器上执行任务)。

  • 异步 - True 或 False?

    AJAX 指的是异步 JavaScript 和 XML(Asynchronous JavaScript and XML)。

    XMLHttpRequest 对象如果要用于 AJAX 的话,其 open() 方法的 async 参数必须设置为 true:

    xmlhttp.open("GET","ajax_test.html",true);

    对于 web 开发人员来说,发送异步请求是一个巨大的进步。很多在服务器执行的任务都相当费时。AJAX 出现之前,这可能会引起应用程序挂起或停止。

    通过 AJAX,JavaScript 无需等待服务器的响应,而是:

  • 在等待服务器响应时执行其他脚本
  • 当响应就绪后对响应进行处理
 

服务器响应

如需获得来自服务器的响应,请使用 XMLHttpRequest 对象的 responseText 或 responseXML 属性。

属性描述
responseText

如果来自服务器的响应并非 XML,请使用 responseText 属性。获得字符串形式的响应数据。document.getElementById("myDiv").innerHTML=xmlhttp.responseText;

responseXML

如果来自服务器的响应是 XML,而且需要作为 XML 对象进行解析,请使用 responseXML 属性:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<script>
function loadXMLDoc()
{
	var xmlhttp;
	if (window.XMLHttpRequest)
	{
		//  IE7+, Firefox, Chrome, Opera, Safari 浏览器执行代码
		xmlhttp=new XMLHttpRequest();
	}
	else
	{
		// IE6, IE5 浏览器执行代码
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	xmlhttp.onreadystatechange=function()
	{
		if (xmlhttp.readyState==4 && xmlhttp.status==200)
		{
			document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
		}
	}
	xmlhttp.open("GET","/try/ajax/ajax_info.txt",true);
	xmlhttp.send();
}
</script>
</head>
<body>

<div id="myDiv"><h2>使用 AJAX 修改该文本内容</h2></div>
<button type="button" onclick="loadXMLDoc()">修改内容</button>

</body>
</html>

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

AJAX 语法 的相关文章

随机推荐

  • ubuntu下QtCreator启动无响应问题解决

    QtCreator正常使用 xff0c 系统重启后一打开就卡死 xff0c 无响应状态 xff0c 重装也没用 xff0c 查了半天才解决 解决方法 xff1a 删除系统配置目录下的QtProject文件夹 具体实施 xff1a 1 fin
  • PTA 数据结构 6-2 顺序表基本操作

    6 2 顺序表基本操作 xff08 10 分 xff09 本题要求实现顺序表元素的增 删 查找以及顺序表输出共4个基本操作函数 L是一个顺序表 xff0c 函数Status ListInsert Sq SqList amp L int po
  • Typora 的 markdown 语法

    Typora 的 markdown 语法 1 标题 使用简单的 ctrl 43 数字键 就可以快速完成各种级别的标题 也可以使用 表示一级标题 xff0c 表示二级标题 xff0c 以此类推 xff0c 有6个标题 2 下划线 ctrl 4
  • css弹性布局和相关属性

    弹性布局 弹性布局主要是解决移动端的问题 xff0c 但是并不代表它不能适用于PC端 xff0c 它最重要的技术就是一个叫弹性盒子 xff08 flexbox xff09 的东西 弹性盒子最主要的几个属性如下 display flex 这个
  • CSS动画

    CSS动画 CSS3的动画属性 下面的表格列出了 64 keyframes 规则和所有动画属性 xff1a 属性描述CSS 64 keyframes规定动画 3animation所有动画属性的简写属性 xff0c 除了 animation
  • JavaScript简介

    JavaScript 它是一种脚本语言 xff0c 提供页面与用户的交互途径 xff0c 主要包含三个方面的东西 ECMAScript ES 它主要是用来定义JavaScript的语法规范 xff0c 现在主流的版本是5 1 后期的主要部分
  • JavaScript 输出 语法

    JavaScript 显示方案 JavaScript 不提供任何内建的打印或显示函数 JavaScript 能够以不同方式 显示 数据 xff1a 使用 window alert 写入警告框使用 document write 写入 HTML
  • JavaScript 条件语句

    JavaScript 条件语句 条件语句 通常在写代码时 xff0c 您总是需要为不同的决定来执行不同的动作 您可以在代码中使用条件语句来完成该任务 在 JavaScript 中 xff0c 我们可使用以下条件语句 xff1a if 语句
  • JavaScript 循环

    JavaScript 支持不同类型的循环 xff1a for 循环代码块一定的次数for in 循环遍历对象的属性while 当指定的条件为 true 时循环指定的代码块do while 同样当指定的条件为 true 时循环指定的代码块 F
  • android系统logcat日志重定向到kernel,可以通过串口来输出

    修改system core rootdir init rc chmod 0660 sys power wake lock chmod 0660 sys power wake unlock 43 chmod 0660 proc kmsg St
  • JavaScript 数组知识图

  • javascript DOM 知识图

    HTML DOM 文档对象模型 当网页被加载时 xff0c 浏览器会创建页面的文档对象模型 xff08 Document Object Model xff09 主要目的就是把网页里面的元素当成对象一样支配 HTML DOM 定义了用于 HT
  • JavaScript 能够改变页面中的所有 HTML 元素

    JavaScript 能够改变页面中的所有 HTML 元素 改变 HTML 输出流 JavaScript 能够创建动态的 HTML 内容 xff1a 在 JavaScript 中 xff0c document write 可用于直接向 HT
  • audio 音频标签的使用 及实例

    audio 音频标签的使用 属性值描述autoplayautoplay如果出现该属性 xff0c 则音频在就绪后马上播放 controlscontrols如果出现该属性 xff0c 则向用户显示音频控件 xff08 比如播放 暂停按钮 xf
  • jQuery简介及简单语法

    什么是 jQuery xff1f jQuery是一个JavaScript函数库 jQuery是一个轻量级的 34 写的少 xff0c 做的多 34 的JavaScript库 jQuery库包含以下功能 xff1a HTML 元素选取HTML
  • jQuery里面的选择器

    jQuery里面的选择器 jQuery里面的选择器多种多样 xff0c 它支持css1 css3的选择器 xff0c 老版本的jQuery还支持Xpath的选择器 xff0c 在原来的CSS选择器上面又扩展了一些新的选择器 jQuery支持
  • jQuery事件

    什么是事件 xff1f 页面对不同访问者的响应叫做事件 事件处理程序指的是当 HTML 中发生某些事件时所调用的方法 jQuery 是为事件处理特别设计的 实例 xff1a 在元素上移动鼠标 选取单选按钮点击元素 在事件中经常使用术语 34
  • JavaScript 存储对象 sessionStorage (会话存储) 和 localStorage(本地存储)

    JavaScript 存储对象 Web 存储 API 提供了 sessionStorage xff08 会话存储 xff09 和 localStorage xff08 本地存储 xff09 两个存储对象来对网页的数据进行添加 删除 修改 查
  • 配色网站

    01渐变色 https www grabient com ref 61 producthunt 02 New Flat UI Color Picker 网站地址 xff1a http www flatuicolorpicker com Ne
  • AJAX 语法

    AJAX 创建 XMLHttpRequest 对象 XMLHttpRequest 用于在后台与服务器交换数据 这意味着可以在不重新加载整个网页的情况下 xff0c 对网页的某部分进行更新 创建 XMLHttpRequest 对象 所有现代浏