iis服务器助手广告
返回顶部
首页 > 资讯 > 精选 >不使用XMLHttpRequest对象如何实现Ajax效果
  • 311
分享到

不使用XMLHttpRequest对象如何实现Ajax效果

2023-06-08 07:06:37 311人浏览 八月长安
摘要

小编给大家分享一下不使用XMLHttpRequest对象如何实现ajax效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!本文实例讲述了不使用XMLHttpReq

小编给大家分享一下不使用XMLHttpRequest对象如何实现ajax效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

本文实例讲述了不使用XMLHttpRequest对象实现Ajax效果的方法。分享给大家供大家参考,具体如下:

前言:

我以前接触Ajax的时候,只是用Jqueryapi来实现Ajax效果,对其并没有细细研究,最近在学习Ajax的原理,会不定时的发布关于Ajax的文章,希望大家关注!

Ajax原理:

在页面不刷新的情况下,利用XMLHttpRequest发送HTTP请求。

主题:

但是不依靠XMLHttpRequest对象,也是可以实现Ajax效果的,我们可以用js实现对后台服务器的请求,同时不带来页面的刷新或跳转。我总结了几种方法,会有实例来说明如何使用的。

方法:

(1)利用204 No Content状态码,当浏览器收到204时,页面不作跳转
(2)利用图片加载的特性来完成请求
(3)利用iframe的特性

1、利用204状态码

原理:

服务器发送响应状态码204时,表示没有内容,如果是浏览器的话,页面不会发生改变

案例:

无刷新投票程序,在一个页面点击投票按钮,会请求服务器向一个文本文件中新增一票,但是页面不发生改变。

文件结构图:

不使用XMLHttpRequest对象如何实现Ajax效果

01-vote.html文件:

主要就是一个表单,一个按钮,按钮的链接为要请求的链接

<!DOCTYPE html><html><head>  <meta charset="utf-8">  <meta http-equiv="X-UA-Compatible" content="IE=edge">  <title>无刷新投票界面</title>  <link rel="stylesheet" href=""></head><body>  <h2>无刷新投票界面</h2>  <img src="./lin.jpg"/>  <p>    <a href="./01-vote.PHP" rel="external nofollow" >投票</a>  </p></body></html>

01-vote.php文件:

模拟投票效果,读取文本文件中的内容,给文本文件中的数字加1,然后重新写回文件

<?php$number = file_get_contents('./01-vote-res.txt');//读取文件内容$number++;//加1file_put_contents('./01-vote-res.txt',$number);//重写到文件中//服务器发送响应头204,前端不会响应,使前端达到ajax效果header('HTTP/1.1 204 No Content');?>

效果图:

不使用XMLHttpRequest对象如何实现Ajax效果

2、利用图片加载的特性来完成http请求

原理:

当我们点击链接时,可以利用JS代码来动态设置某张图片的src属性为要请求的链接,这样浏览器就会去请求该链接,而页面也不会跳转。

案例:

还是以上文中提到的投票程序为例

文档结构图:

不使用XMLHttpRequest对象如何实现Ajax效果

02-vote.html文件:

首先给a标签设置一个单击事件,然后利用JS创建一个图片节点,设置其节点的src属性为要请求的链接

<!DOCTYPE html><html><head>  <meta charset="utf-8">  <meta http-equiv="X-UA-Compatible" content="IE=edge">  <title>无刷新投票界面</title>  <link rel="stylesheet" href=""></head><script>  //投票函数  function vote(){    var img = document.createElement('img');//创建img节点    img.src = '02-vote.php';//设置src属性  }</script><body>  <h2>无刷新投票界面</h2>  <img src="./lin.jpg"/>  <p>    <a href="javascript:void();" rel="external nofollow" onclick="vote();">投票</a>  </p></body></html>

02-vote.php文件:

这个文件和01-vote.php的区别就是不再设置返回的状态码。

<?php$number = file_get_contents('./02-vote-res.txt');//读取文件$number++;//加1file_put_contents('./02-vote-res.txt',$number);//重新写回文件?>

效果图:

和1方法中的效果图一样,此处不再给出

3、利用iframe的特性

原理:

iframe元素会创建包含另外一个文档的内联框架,什么意思?就是当前浏览器访问的页面中会包含里一个页面。当我们要请求服务器的时候,可以让这个内部页面去请求服务器,而主界面不会发生跳转和刷新现象。

案例:

以用户注册为例

文件结构图:

不使用XMLHttpRequest对象如何实现Ajax效果

01-reg.html文件:

主要是一个表单和一个iframe标签,并且设置了iframe标签为不可见:width="0" height="0" frameborder="0"

<!DOCTYPE html><html><head>  <meta charset="utf-8">  <meta http-equiv="X-UA-Compatible" content="IE=edge">  <title>无刷新注册界面</title>  <link rel="stylesheet" href=""></head><body>  <h2>无刷新用户注册界面</h2>  <!--存放注册返回信息-->  <p id="regres"></p>  <fORM method="post" action="01-reg.php" target="reg">    用户名:<input type="text" name="username" /><br/>    邮箱:<input type="text" name="email" /><br/>    <input type="submit" value="注册" />  </form>  <!--不可见的iframe标签-->  <iframe width="0" height="0" frameborder="0" name="reg"></iframe></body></html>

01-reg.php文件:

接受Post数据,判断是否有一个为空,如果有则在主界面显示“信息不完整‘',否则显示“注册成功”,由于是例子的原因,我这里就简单的进行了写判断。

<?phpheader('Content-type:text/html;charset=utf-8');//设置编码if(trim($_POST['username']) === '' || trim($_POST['email']) === ''){//如果用户名或邮箱都为空  echo '<script>parent.document.getElementById("regres").innerHTML="信息不完整"</script>';//在主界面输出"信息不完整"  exit;}echo '<script>parent.document.getElementById("regres").innerHTML="注册成功"</script>';//在主界面输出"注册成功"?>

效果图:

不使用XMLHttpRequest对象如何实现Ajax效果

以上是“不使用XMLHttpRequest对象如何实现Ajax效果”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网精选频道!

--结束END--

本文标题: 不使用XMLHttpRequest对象如何实现Ajax效果

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

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

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 不使用XMLHttpRequest对象如何实现Ajax效果
    小编给大家分享一下不使用XMLHttpRequest对象如何实现Ajax效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!本文实例讲述了不使用XMLHttpReq...
    99+
    2023-06-08
  • AJAX中XMLHttpRequest对象怎么使用
    在AJAX中,XMLHttpRequest对象的使用如下:1. 创建一个XMLHttpRequest对象:```javascript...
    99+
    2023-09-13
    AJAX
  • 如何使用ajax技术通过XMLHttpRequest对象完成首页登录功能
    本篇内容主要讲解“如何使用ajax技术通过XMLHttpRequest对象完成首页登录功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“如何使用ajax技术通过...
    99+
    2024-04-02
  • 如何实现Ajax分页效果
    这篇文章给大家分享的是有关如何实现Ajax分页效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。首先创建前台页面MyAjaxPager.aspx 复制代码 代码如下:<%@...
    99+
    2024-04-02
  • ajax如何实现分页效果
    这篇文章将为大家详细讲解有关ajax如何实现分页效果,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。ajax分页效果图:上干货:  $(function(){&n...
    99+
    2024-04-02
  • AJAX如何实现仿Google Suggest效果
    这篇文章主要为大家展示了“AJAX如何实现仿Google Suggest效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“AJAX如何实现仿Google Sug...
    99+
    2024-04-02
  • 如何使用ajax操作JavaScript对象
    这篇文章主要讲解了“如何使用ajax操作JavaScript对象”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用ajax操作JavaScript对象”...
    99+
    2024-04-02
  • ajax如何实现三级联动效果
    小编给大家分享一下ajax如何实现三级联动效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!ajax 实现三级联动,相当于写了一...
    99+
    2024-04-02
  • 如何实现ajax三级联动效果
    这篇文章主要为大家展示了“如何实现ajax三级联动效果”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何实现ajax三级联动效果”这篇文章吧。具体内容如下主页面...
    99+
    2024-04-02
  • 如何使用 Java 对象实现高效的 HTTP 加载?
    HTTP(Hypertext Transfer Protocol)是一种用于传输数据的协议,是现代网络应用的基础。在 Java 中,我们可以使用 HttpURLConnection 类来进行 HTTP 请求。然而,使用 HttpURLCo...
    99+
    2023-07-27
    对象 http load
  • 如何实现Ajax无刷新分页效果
    这篇文章给大家分享的是有关如何实现Ajax无刷新分页效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Ajax无刷新分页效果,如下代码实现<!doctype ht...
    99+
    2024-04-02
  • Ajax如何实现加载菊花loding效果
    这篇文章给大家分享的是有关Ajax如何实现加载菊花loding效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Ajax 异步请求的时候,一般都会利用一个动态的 gif小图片来制...
    99+
    2024-04-02
  • js对象实现数据分页效果
    本文实例为大家分享了js对象实现数据分页效果的具体代码,供大家参考,具体内容如下 实现数据分页要清楚这个的方面的设计: 1.先模拟建立一个后台数据库,如下: var peoson...
    99+
    2024-04-02
  • 如何使用对象封装ajax重复调用
    这篇文章主要为大家展示了“如何使用对象封装ajax重复调用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何使用对象封装ajax重复调用”这篇文章吧。在项目中经...
    99+
    2024-04-02
  • Ajax如何实现简单下拉选项效果
    这篇文章给大家分享的是有关Ajax如何实现简单下拉选项效果的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。基本都是固定步骤!主要在JAVASCRIPT和PHP中的操作HTML代码里就只有两个SELECT标签如下:&...
    99+
    2023-06-08
  • css中如何实现对号效果
    这篇文章主要介绍了css中如何实现对号效果,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。 实现方法:1、利用“b...
    99+
    2024-04-02
  • js如何通过Date对象实现倒计时动画效果
    小编给大家分享一下js如何通过Date对象实现倒计时动画效果,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!js通过Date对象实...
    99+
    2024-04-02
  • 如何使用List对象实现去重
    今天就跟大家聊聊有关如何使用List对象实现去重,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1、List<Object>去重People类public class Pe...
    99+
    2023-05-31
    list 去重
  • Java中如何使用对象实现高效的编程算法?
    在Java编程中,对象是非常重要的概念。使用对象可以将数据和行为结合起来,从而更加灵活和高效地编写算法。在本文中,我们将介绍如何使用对象实现高效的编程算法。 一、面向对象编程基础 在Java中,面向对象编程是一种基础的编程思想。它将程序分...
    99+
    2023-10-31
    对象 编程算法 数组
  • ajax翻页效果模仿yii框架如何实现
    这篇文章主要介绍了ajax翻页效果模仿yii框架如何实现,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。<!DOCTYPE h...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作