返回顶部
首页 > 资讯 > 前端开发 > node.js >Ajax如何读取数据
  • 788
分享到

Ajax如何读取数据

2024-04-02 19:04:59 788人浏览 八月长安
摘要

这篇文章给大家分享的是有关ajax如何读取数据的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 拿出来我们上次准备好的东

这篇文章给大家分享的是有关ajax如何读取数据的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

拿出来我们上次准备好的东西.1:XMLHttpRequest对象的函数.2:Asp输出xml格式的文件.你可以点击查看该文件内容:Asp输出xml格式的数据
打开以后你会发现我们使用Asp技术动态的输出一个xml格式的数据.如果你对该技术还不了解,请返回阅读:ajax开始准备篇 在这个输出的数据里面有一个msg标签.标签里包含了一段文字内容.今天我们就读取这个msg标签.并将文字内容显示到你的网页上.
先看下面的代码.并附上效果演示
WEB_ajax.asp

复制代码 代码如下:


<?xml version="1.0" encoding="gb2312" ?>
<body>
<msg>一个简单的Asp输出xml的示例,以后在我们的ajax教程实例中,我们都将使用该文件进行数据的读取操作</msg>
<read>
<li>html</li>
<li>CSS</li>
<li>Dom</li>
<li>javascript</li>
<li>Ajax</li>
</read>
</body>


下面是静态页面内容

复制代码 代码如下:


<html>
<head>
<title>创建一个可用的xmlhttpreuqest对象</title>
</head>
<body>
<div id="str"></div><!--请求回来的数据将显示在该div中-->
<input type="button" value="显示数据" onclick="Post()" />
<script type="text/javascript">
function ajax_xmlhttp(){
//在IE中创建xmlhttpRequest,适用于IE5.0以上所有版本
var msXmlhttp = new Array("Msxml2.XMLHTTP.5.0","Msxml2.XMLHTTP.4.0","Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP","Microsoft.XMLHTTP");
for(var i=0; i<msXmlhttp.length; i++){
try
{
_xmlhttp=new ActiveXObject(msXmlhttp[i]);
}
catch(e)
{
_xmlhttp=null;
}
} //循环创建基于IE浏览器的xmlhttp.结束
//如果非IE浏览器,则创建基于FireFox等浏览器的xmlhttpRequest
if(!_xmlhttp && typeof XMLHttpRequest != "undefined")
{
_xmlhttp=new XMLHttpRequest();
}
return _xmlhttp;
}

//发送请求函数
function Post(){
var ajax = ajax_xmlhttp(); //将xmlhttprequest对象赋值给一个变量.
ajax.open("post","web_ajax.asp",true);//设置请求方式,请求文件,异步请求
ajax.onreadystatechange = function(){//你也可以这里指定一个已经写好的函数名称
if(ajax.readyState==4){//数据返回成功
if(ajax.status==200){//http请求状态码返回ok
var xmlData = ajax.responseXML;
var msg = xmlData.getElementsByTagName("msg");//获取所有的msg元素
var data = msg[0].firstChild.nodeValue;
document.getElementById("str").innerHTML = data;
}
}
}
ajax.send(null);
}
</script>
</body>
</html>


下面让我来慢慢分析该实例是如何实现的.在上面的代码中除了昨天我们创建的XMLHTTPRequest函数以外.在最上面多了一个ID属性为str的div, 该div的作用是用来显示我们请求回的数据.然后我们新写了一个名字为Post的函数.该函数的作用是当你点击读取数据按扭.发送请求,传回数据, 显示数据.

我们先来看Post函数的第一行:var ajax = ajax_xmlhttp(); 该行的意思是说将具有XMLHTTPRequest对象的函数赋值给一个名字为ajax的变量, 这时ajax变量的自身就等于了XMLHTTPRequest对象.我们可以使用这个变量来引用XMLHTTPRequest对象中的各个方法和属性.

第二行:ajax.open("post","web_ajax.asp",true); 表示指定一个请求,请求方式为post,请求的服务端网页为web_ajax.asp,true代表为异步请求. 你可以参考:open方法

第三行:ajax.onreadystatechange=function(){},指定了一段自定义程序.我们看function里的内容.当readyState状态等于4的时候,readyState等于4即代表请求的数据已被成功返回!并且status 返回200,status代表http请求状态码,返回200代表ok. 与此同时我们使用responseXML接收服务端传回的所有数据.responseXML代表以xml格式来接收数据.

我们将服务端返回的所有xml数据赋值给一个xmlData的变量.xmlData.getElementsByTagName("msg");即代表获取返回的xml数据中名字为msg所有的标签.你可以参考:getElementsByTagName解释与实例

msg[0]代表引用第一个msg标签.事实上我们的数据内也只存在一个msg.并返回该标签第一个子元素的文本内容.msg的第一个子元素即是那段文字.nodeValue代表获取这些文字.参考:firstChild方法与nodeValue 当返回的数据成功被解析,找出页面内id为str的div,使用innerHTML将数据显示到网页中.

Post函数中最后一行:ajax.send(null);这个大家一看便知.发送请求.null代表发送一个空的请求,没有数据要提交.
最后我们重点讲一下onreadysatechange这个属性.说他是属性,但他具有事件机制.也就是说你可以为他指定一个函数.onreadystatechange的工作原理是:每次readyState的状态改变.都会执行onreadystatechange指定的那个函数. 其实在ajax.send(null)没有执行之前.onreadystatechange已经被执行了至少一次了.因为当调用了open方法以后,readystate的状态会发生变化.因此会触发onreadystatechange的函数.这类似一个递归机制.readystate的状态发生变化 执行onreadystatechange的函数.而我们又在函数里判断readysate状态值,其实在一个完整的请求过程中,readyState至少会发生4次变化.根据浏览器会有所不同.只有当readystate等于4的时候.我们开始接收数据并解析.如果你还不够明白,请仔细阅读:onreadystatechange属性 readyState方法,以及status

感谢各位的阅读!关于“Ajax如何读取数据”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: Ajax如何读取数据

本文链接: https://lsjlt.com/news/82952.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Ajax如何读取数据
    这篇文章给大家分享的是有关Ajax如何读取数据的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 拿出来我们上次准备好的东...
    99+
    2024-04-02
  • ajax中如何读取Json数据
    这篇文章将为大家详细讲解有关ajax中如何读取Json数据,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、基础知识什么是json?JSON 指的是 Jav...
    99+
    2024-04-02
  • Ajax如何读取数据并分页显示
    这篇文章将为大家详细讲解有关Ajax如何读取数据并分页显示,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 我觉得还是有必要把我的ajax分页...
    99+
    2024-04-02
  • Ajax中怎么读取数据
    这篇文章给大家介绍Ajax中怎么读取数据,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。1:XMLHTTPRequest对象的函数. 2:Asp输出xml格式的文件.你可以点击查看该文件...
    99+
    2024-04-02
  • ajax返回的数据如何取
    要从ajax返回的数据中获取特定的值,需要通过解析返回的数据进行处理。通常返回的数据是一个字符串,可以使用JSON.parse()函...
    99+
    2023-09-15
    ajax
  • Ajax中怎么读取数据到表格
    Ajax中怎么读取数据到表格,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。代码如下:<% '出自:http://Www.Web6...
    99+
    2024-04-02
  • 如何用Ajax读取xml文件
    本篇内容介绍了“如何用Ajax读取xml文件”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • mysql如何读取数据库数据
    mysql 读取数据库数据有两种常用方法:select 语句,用于从表中提取数据,语法为:select [列名] from [表名] [条件] [分组] [条件] [排序] [...
    99+
    2024-04-14
    mysql python
  • pandas如何读取mysql数据
    目录pandas读取mysql数据pandas读取mysql数据到DataFrame方法一方法二总结pandas读取mysql数据 def get_data(): conn = pymysql.connect(host...
    99+
    2022-12-17
    pandas读取mysql数据 pandasmysql数据 mysql数据读取
  • Pyspark如何读取parquet数据
    这期内容当中小编将会给大家带来有关Pyspark如何读取parquet数据,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。可以跳过不符合条件的数据,只读取需要的数据,降低IO数据量;压缩编码可以降低磁盘存储...
    99+
    2023-06-03
  • python如何读取mongodb数据
    要在Python中读取MongoDB数据,您可以使用PyMongo库。以下是一个简单示例:首先,确保您已经安装了PyMongo库。您...
    99+
    2023-08-23
    python mongodb
  • mysql如何读取脏数据
    mysql 读取脏数据的方法:将事务隔离级别设置为 read uncommitted。该隔离级别允许读取其他并发事务未提交的修改。风险包括:数据不一致幻读问题建议仅在数据一致性不重要且对...
    99+
    2024-04-14
    mysql
  • python中如何读取数据
    python 中读取数据的方法有:从文件读取(打开、读入、逐行读取)从文本流读取(创建、写入、重置指针、读取)从 csv 文件读取(创建读取器、逐行读取)从 json 文件读取(加载数据...
    99+
    2024-04-02
  • ajax怎么读取properties资源文件数据
    本篇内容主要讲解“ajax怎么读取properties资源文件数据”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“ajax怎么读取properties资源文件数据...
    99+
    2024-04-02
  • 怎么用Ajax读取XML格式的数据
    本篇内容介绍了“怎么用Ajax读取XML格式的数据”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!代码如下:...
    99+
    2024-04-02
  • php如何从数据库读取数据
    在PHP中,可以使用MySQLi或PDO扩展来连接和操作数据库。使用MySQLi扩展从数据库读取数据的示例代码如下:```php//...
    99+
    2023-08-23
    php 数据库
  • vb如何读取sql数据库数据
    在VB中读取SQL数据库数据可以使用ADO.NET技术。以下是一个简单示例代码: 引用System.Data.SqlClient命...
    99+
    2024-04-19
    vb sql
  • C#中如何读取BLOB数据
    今天就跟大家聊聊有关C#中如何读取BLOB数据,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。什么是 BLOB?BLOB 是二进制大对象(binary large object)的首字...
    99+
    2023-06-17
  • 如何使用ADO.NET读取数据
    小编给大家分享一下如何使用ADO.NET读取数据,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!ADO.NET还是比较常用的,于是我研究了一下ADO.NET读取数据...
    99+
    2023-06-17
  • Linq如何随机读取数据
    这篇文章主要介绍了Linq如何随机读取数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Linq随机读取数据在系统自由生成的o/p mapping代码中添加这个方法,如果是用...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作