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 语法 的相关文章

  • AJAX 表单正在向自身提交?

    我不知道今晚发生了什么 但我似乎无法让 AJAX 工作 提交表单后 它会使用 URL 中的值刷新页面 我正在使用具有提交处理程序的验证插件 但它仍然会刷新 我以前用过这个方法 没有出现任何问题 看看这里的页面 让我知道您的想法 div cl
  • 从单个 javascript 函数向两个不同的 PHP 脚本发送两个 Ajax 请求

    是否可以同时向两个或多个 Php 脚本发送 Ajax 请求 我知道这可以串行实现 从 1 获取响应 然后从另一个获取响应 但我想知道是否可以同时实现 请协助我使用以下代码 function calShowUpload if http rea
  • 以一定时间间隔连续重复运行 JavaScript 函数

    这是我的第一个问题 希望您尽快回答 我想要代码连续重复一个函数 我尝试了一些代码 但没有成功 我尝试了这段代码 我想在一段时间后重复这个功能 我努力了setInterval and setTimeout 但是 我还没有收到结果 这将重复该任
  • 当复选框条件更改时,如何使用ajax更新mysql数据库?

    我有一个在客户端按行显示的文章表 每篇文章都有一个唯一的 ID 并包含一个复选框以指示该文章是否被选中为收藏夹 如果它是最喜欢的 则该复选框已被选中 如果没有 则未选中 现在 如果特定于每一行的复选框条件发生变化 我需要 js 或 jque
  • CckEditor - 从 AJAX 加载的模板

    我正在使用 CkEditor 并且想要定义一个自定义模板 该模板使用 AJAX 函数来加载 HTML 字符串 我已经能够定义自定义模板 但如果我对模板对象的 html 属性使用函数 则该函数永远不会执行 是否可以使用 AJAX 和默认模板插
  • Fancybox - Ajax 图片库

    我有一个自定义图像库 它用缩略图填充 div 每个缩略图都包含在一个 fancybox 组中 当您单击一个 它在 fancybox 中打开 时 您可以按 上一张 下一张 在第一 页面 上的图像之间循环 要在页面之间移动 您必须关闭 fanc
  • PHP、jQuery 和 Ajax 调用乱序

    我正在使用 jQuery 进行 Ajax 调用 我有 x 数量的 Ajax 调用附加到 div 这些 Ajax 加载请求是由 PHP foreach 循环生成的 问题是它们渲染的顺序不正确 它们被设置在数组中
  • 使用 MVC 5 和实体框架的 jQuery 数据表

    我需要一些关于在控制器中放入什么内容的指导 以便我可以对 jQuery 数据表使用服务器端处理 我正在使用 MVC 5 和实体框架 示例位于 http datatablesmvc codeplex com documentation htt
  • Ajax - 限制列表的加载,然后在滚动上加载其余部分

    我有一家商店 在一个页面上显示某个类别的所有产品 这是店主喜欢的方式 因此不能选择分页 为了缩短某些重类别的加载时间 我希望实现一个可以加载许多产品的脚本 li s然后在页面滚动上加载另一组 页面就是用这个结构生成的 div ul clas
  • JQuery:将 FormData 和 csrf 令牌一起发布

    Is the data 下面的行正确吗 我想将表单数据和 csrf 令牌发布到 Django 视图函数 file upload on change function var currentpath window location pathn
  • 将查询字符串添加到 Ajax url 调用

    我想知道当我们调用 Jquery Ajax 时是否可以将查询字符串与 URL 一起传递 例子 ajax type POST url index php task addNewInfo data regForm serialize dataT
  • 回到使用 ajax 的 PushState 条目

    我对以下情况有疑问 用户访问网站 用户点击使用history pushState的链接来更新url 通过ajax加载部分页面内容 使用jQuery 用户单击加载新页面的常规链接 用户点击返回返回到pushState条目 该页面现在仅显示通过
  • jQuery / Ajax:如何循环遍历数组作为 Ajax 成功函数的一部分

    我有一个阿贾克斯调用返回一个数组并需要对该数组中的每个值执行某些操作 到目前为止 我有以下内容 但这会返回以下错误 Uncaught TypeError Cannot use in operator to search for length
  • 使用 AJAX 和 JQuery 按设定的时间间隔刷新 Rails 部分

    I have a page in my rails application that looks like 现在 我有另一个用 python 编码的人工智能应用程序 它处理视频 显示在 Rails 应用程序页面的左侧 并使用捕获的车辆及其相
  • 无法让基本的 pjax 示例工作

    编辑 非 工作示例在这里 http www jogos mmorpg com pjax html http www jogos mmorpg com pjax html 我正在尝试重现一个非常基本的 PJAX 示例 如自述文件中所述 htt
  • 如何在提交表单时调用 jquery 函数?

    我有一个表格如下
  • React.js 和 Ajax 之间的区别

    当我在 google 上搜索 React js 时 我得到的是 React js 是一个用于创建用户界面的框架 如果网站的某个特定部分经常更新 则意味着我们可以使用 React 但我很困惑 Ajax 仅用于此目的 我们可以使用 Ajax 更
  • 使用 Jquery Ajax 将数据从 jsp 发送到 struts2 操作类

    我需要使用 jquery Ajax 将表单数据从 jsp 传递到 struts2 并从 Struts2 操作类接收回 JSON 数据 我已经给出了下面的代码 当我传递 AJAX 数据时 url search action searchTex
  • 如果验证失败,如何在 ASP.NET MVC 中阻止 jquery ajax 提交

    我在用ASP NET 5 MVC RC1 我的 ASP NET MVC 使用的 jquery 验证插件是默认 ASP NET 5 模板项目使用的标准 jquery validate js jQuery Validation Plugin v
  • jQuery.ajax() 记录 HTTP 请求

    我有一个发送 HTTP POST 请求的函数 我想记录它以进行调试 这是函数 function serverRequest URL DATA callback ajax url URL type POST dataType text con

随机推荐

  • 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 对象 所有现代浏