认识AJAX

news2024/9/23 5:35:14

一、什么是Ajax?

有跳转就是同步,无跳转就是异步

 Asynchronous Javascript And XML(异步JavaScript和XML)

  • Ajax = 异步 JavaScript 和XML。
  • Ajax是一种用于创建快速动态网页的技术
  • 通过在后台与服务器进行少量数据交换,Ajax可以使网页实现异步更新。这意味着可以在不重新加载整个网页的情况下,对网页的某部分进行更新
  • 传统的网页(不使用 Ajax)如果需要更新内容,必需重载整个网页面
  • Ajax 不是一种新的编程语言,而是一种用于创建更好更快以及交互性更强的Web应用程序的技术

 使用AJAX可以局部刷新(异步无刷新技术),提高用户体验(百度页面是整个刷新

 XML已经完全被JSON替代,JSON是当前前后端数据交换的一种格式

Ajax 是什么? 如何创建一个 Ajax? - JavaScript前端Web工程师

二.AJAX的使用步骤

 1.创建HTTP请求对象

   

var  xhr = new XMLHttpRequest()

   

 2.打开服务器的连接,设置要请求的接口

   

xhr.open(参数1, 参数2, 参数3)

   

参数1:接口的请求方式,格式为大写,例如: GET  POST...

   

参数2:接口的地址

   

参数3:是否为异步  true->异步   false->同步    默认是异步

   

 3.发送请求

   

xhr.send()

   

 4.绑定事件,监听服务器端响应

   

xhr.onload  = function(){

   

     xhr.responseText   获取接口响应结果

   

}

   

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>用户登录——AJAX版</title>

</head>

<body>

用户<input type="text" id="user"><br>

密码<input type="text" id="pwd"><br>

<button id="btn">登录</button>

<script>

// 给按钮绑定点击事件,点击后获取用户名和密码,然后向后端发请求(AJAX),传递用户名和密码

btn.onclick=function(){

// alert('点击了')

// 获取用户输入的用户名和密码

var a=user.value

var b=pwd.value

console.log(a,b)

// 向后端发请求的行为叫做AJAX

// 1.创建HTTP请求对象

var xhr=new XMLHttpRequest()

// 2.打开服务器连接(请求接口)

// 参数1:接口请求方式(标准写法是大写)

// 参数2:接口地址

// 参数3:是否为异步 true->异步 false->同步

// get请求的参数要拼接到url后

xhr.open('GET',`http://127.0.0.1:3000/login?user=${a}&pwd=${b}`,true)

// 3.发送请求

xhr.send()

// 4.绑定事件,监听服务器端响应

// 只要有响应就自动调取

xhr.onload=function(){

// 获取响应结果,响应结果都在响应体里面

console.log(xhr.responseText)

}

}

</script>

</body>

</html>

三.AJAX传参

  1.get传递

    直接将参数拼接在URL中

    http://127.0.0.1:3000/check?a=1&b=2

  2.post传递

   将参数放入到请求体中,还需要设置编码类型

   

设置编码类型

   

xhr.setRequestHeader('Content-Type',  'application/x-www-form-urlencoded;charset=utf-8')

   

将参数放入到请求体

   

xhr.send('a=1&b=2')

   

四.JSON

后端给前端返回(前端也可以给后端),接口返回结果

 叫做JS对象表示法,使用JS对象的格式去描述一组数据,是前后端数据交换的一种格式

 属性名必须使用双引号,属性值是字符串必须是双引号

 JS和JSON之间可以相互转换

  (1)将JS转为JSON(序列化)

     JSON.stringify()  

  (2)将JSON转为JS(反序列化)

     JSON.parse()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1488466.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringMVC01、回顾MVC

1、回顾MVC 1.1、什么是MVC MVC是模型(Model)、视图(View)、控制器(Controller)的简写&#xff0c;是一种软件设计规范。是将业务逻辑、数据、显示分离的方法来组织代码。MVC主要作用是降低了视图与业务逻辑间的双向偶合。MVC不是一种设计模式&#xff0c;MVC是一种架构模式。…

基本运算符

参考C Primer Plus进行C语言学习 文章目录 基本运算符 除法运算符&#xff1a;/其他运算 1、除法运算符 在C语言中&#xff0c;整数除法结果的小数部分被丢弃&#xff0c;这一过程被称为截断。 2.其他运算符 &#xff08;1&#xff09;sizeof运算符和size_t类型 回顾一下&…

代码随想录算法训练营三刷day13 |栈与队列 之 239. 滑动窗口最大值 347.前 K 个高频元素

三刷day13 239. 滑动窗口最大值347.前 K 个高频元素 239. 滑动窗口最大值 题目链接 解题思路&#xff1a; 设计单调队列的时候&#xff0c;pop和push操作要保持如下规则&#xff1a; pop(value)&#xff1a;如果窗口移除的元素value等于单调队列的出口元素&#xff0c;那么队…

Jumpserver堡垒机搭建

Jumpserver概述: Jumpserver优势:

DevOps学习 | 如何应对IT服务交付中的问题?

目录 前言 DevOps是什么&#xff1f; DevOps发展历程 DevOps与微服务、容器的关系 书本推荐 前言 作为一个热门的概念&#xff0c;DevOps这个名词在程序员社区里频频出现&#xff0c;备受技术大佬们的追捧。甚至网络上有了“南无DevOps”的戏言&#xff08;南无在梵语的意…

(学习日记)2024.03.04:UCOSIII第六节:main函数+前六节总结

写在前面&#xff1a; 由于时间的不足与学习的碎片化&#xff0c;写博客变得有些奢侈。 但是对于记录学习&#xff08;忘了以后能快速复习&#xff09;的渴望一天天变得强烈。 既然如此 不如以天为单位&#xff0c;以时间为顺序&#xff0c;仅仅将博客当做一个知识学习的目录&a…

连锁线上线下门店管理为什么需要使用分账系统

连锁线上线下门店管理的复杂性要求采用有效的分账系统&#xff0c;以实现降低税务风险、保障资金安全和合规运营。首先&#xff0c;通过分账系统&#xff0c;可以清晰记录不同门店的收入和支出情况&#xff0c;有利于确保税务合规性。其次&#xff0c;分账系统有助于将不同门店…

Scratch 第十六课-弹珠台游戏

第十六课-弹珠台游戏 大家好&#xff0c;今天我们一起做一款弹珠台scratch游戏&#xff0c;我们也可以叫它弹球游戏&#xff01;这款游戏在刚出来的时候非常火爆。小朋友们要认真学习下&#xff01; 这节课的学习目标 物体碰撞如何处理转向问题。复习键盘对角色的控制方式。…

23.基于springboot + vue实现的前后端分离-在线旅游网站系统(项目 + 论文PPT)

项目介绍 本旅游网站系统采用的数据库是MYSQL &#xff0c;使用 JSP 技术开发&#xff0c;在设计过程中&#xff0c;充分保证了系统代码的良好可读性、实用性、易扩展性、通用性、便于后期维护、操作方便以及页面简洁等特点。 技术选型 后端: SpringBoot Mybatis 数据库 : MyS…

Django官网项目 二

官网地址&#xff1a;Writing your first Django app, part 2 | Django documentation | Django 创建模组&#xff1a; 注册model &#xff08;bug&#xff1a;没有加后面的逗号&#xff09; 在manage.py 的目录下&#xff1a; python manage.py makemigrations polls pyth…

打印机状态错误的解决方法

在电脑操作中&#xff0c;用户遇到打印机状态错误的问题&#xff0c;但不知道怎么操作才可以解决问题&#xff1f;接下来小编介绍打印机状态错误的解决方法&#xff0c;帮助大家轻松解决打印机出现错误状态的问题&#xff0c;快速恢复打印机的正常工作状态&#xff0c;从而满足…

固定资产管理系统建设方案

固定资产管理系统需求要点&#xff1a; 1. 实现公司内部固定资产管理全生命周期管理&#xff0c;包括资产采购、资产入库、资产领用、资产借用、资产归还、资产报废、资产维修、资产调拨等全过程管理。 2. 可实现集团内部固定资产盘点管理&#xff0c;包括盘点计划、盘点查询等…

多平台拼音输入法软件的开发

拼音输入法从上个世纪发展到现在, 已经发展了几十年了, 技术上已经非常成熟了. 换句话说, 就是实际上没多少技术含量, 随便来个人就能手搓一个. 本文介绍一个简单的多平台拼音输入法软件的设计和实现, 支持 GNU/Linux (ibus) 平台 (PC) 和 Android 平台 (手机). 目录 1 中文输…

【C++庖丁解牛】默认成员函数

&#x1f4d9; 作者简介 &#xff1a;RO-BERRY &#x1f4d7; 学习方向&#xff1a;致力于C、C、数据结构、TCP/IP、数据库等等一系列知识 &#x1f4d2; 日后方向 : 偏向于CPP开发以及大数据方向&#xff0c;欢迎各位关注&#xff0c;谢谢各位的支持 目录 前言1. 构造函数1.1 …

低空经济20人|卓翼智能任雪峰:以技术驱动市场,引领无人机细分领域创新

作为国内系留无人机领域的领头羊企业&#xff0c;卓翼智能致力于提供智能无人系统解决方案。本期“低空经济20人”请到卓翼智能CEO任雪峰分享他对系留无人机研发应用的经验以及未来无人机行业生态发展的观点。 如今&#xff0c;无人机的应用场景逐渐广泛&#xff0c;在社会发展…

pycharm社区版+miniconda 环境配置学习

使用电脑为win10 64bit 一、下载&#xff1a; 1.pycharm社区版地址&#xff1a; 其他版本 - PyCharm 2.miniconda下载地址&#xff1a; Index of /anaconda/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 3.python下载地址&#xff1a; https://www.python.or…

百度AI,能否“投”出未来?

图片&#xff5c;freeflo.ai ©自象限原创 作者丨程心、罗辑 2月28日&#xff0c;百度发布了2023年四季度财报及全年未经审计的财务报告&#xff0c;AI大模型带来的收入和利润成为最大的亮点。 财报显示&#xff0c;2023年百度集团总营收达1345.98亿元&#xff0c;同比增…

一文读懂Penpad 以 Fair Launch 方式推出的首个资产 PEN

随着 2 月 28 日比特币重新站上 6 万美元的高峰后&#xff0c;标志着加密市场正在进入新一轮牛市周期。在 ETF 的促进作用下&#xff0c;加密市场不断有新的资金流入&#xff0c;加密货币总市值不断攀升。Layer2 市场率先做出了反应&#xff0c;有数据显示&#xff0c;当前以太…

混合注意力机制全新工作!性能表现SOTA!准确率达98.53%

在神经网络中&#xff0c;为增强模型对数据中重要特征的识别和处理能力&#xff0c;研究者们通常会同时使用不同类型的注意力机制&#xff0c;包括空间注意力、通道注意力、自注意力等。这种结合了多种不同类型注意力机制的技术就是混合注意力机制。 混合注意力机制的研究和应…

Thingsboard本地源码部署教程

本章将介绍ThingsBoard的本地环境搭建&#xff0c;以及源码的编译安装。本机环境&#xff1a;jdk11、maven 3.6.2、node v12.18.2、idea 2023.1、redis 6.2 环境安装 开发环境要求&#xff1a; Jdk 11 版本 &#xff1b;Postgresql 9 以上&#xff1b;Maven 3.6 以上&#xf…