认识AJAX

一、什么是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.valuevar b=pwd.valueconsole.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.mzph.cn/news/707116.shtml

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

相关文章

Swagger接口文档管理工具

Swagger 1、Swagger1.1 swagger介绍1.2 项目集成swagger流程1.3 项目集成swagger 2、knife4j2.1 knife4j介绍2.2 项目集成knife4j 1、Swagger 1.1 swagger介绍 官网&#xff1a;https://swagger.io/ Swagger 是一个规范和完整的Web API框架&#xff0c;用于生成、描述、调用和…

stm32——hal库学习笔记(ADC)

这里写目录标题 一、ADC简介&#xff08;了解&#xff09;1.1&#xff0c;什么是ADC&#xff1f;1.2&#xff0c;常见的ADC类型1.3&#xff0c;并联比较型工作示意图1.4&#xff0c;逐次逼近型工作示意图1.5&#xff0c;ADC的特性参数1.6&#xff0c;STM32各系列ADC的主要特性 …

flask流式输出-SSE服务

一、定义 flask demo前端遇到的问题 二、实现 flask demo from gevent import monkey monkey.patch_all() #并行 import time from flask import Response, stream_with_context from flask import Flask from gevent.pywsgi import WSGIServer from flask import …

【JS】数值精度缺失问题解决方案

方法一&#xff1a; 保留字符串类型&#xff0c;传给后端 方法二&#xff1a; 如果涉及到计算&#xff0c;用以下方法 // 核心思想 在计算前&#xff0c;将数字乘以相同倍数&#xff0c;让他没有小数位&#xff0c;然后再进行计算&#xff0c;然后再除以相同的倍数&#xff0…

FPS游戏之漫谈低内存性能优化

我想各位专门优化公司项目的一定会定位分析出来很多模块明明已经退出了 比如宝箱模块&#xff0c;明明已经离开当前界面&#xff0c;还有很多未常驻内存的资源占用了内存&#xff0c; 那我们遇到低端机器很容易出现闪退&#xff0c;反应速度慢等问题&#xff0c;那么我们一般在…

parent Project“com.xxx“ not foud 问题

version 飘红&#xff0c;直接清理缓存&#xff08;Invalidate Caches..&#xff09;解决。

51单片机晶振频率与定时中断产生pwn占空比

单片机中晶振频率为12MHZ的机器周期怎么算? 1、系统晶振频率是12M&#xff0c;则机器周期&#xff1d;12&#xff0f;12&#xff1d;1us&#xff1b; 2、定时1ms&#xff1d;1&#xff0a;1000&#xff1d;1000us&#xff1b; 3、工作在方式0下&#xff1a;最大计数值是2&a…

高防IP简介

高防IP可以防御的有包括但不限于以下类型&#xff1a; SYN Flood、UDP Flood、ICMP Flood、IGMP Flood、ACK Flood、Ping Sweep 等攻击。高防IP专注于解决云外业务遭受大流量DDoS攻击的防护服务。支持网站和非网站类业务的DDoS、CC防护&#xff0c;用户通过配置转发规则&#x…

Java之美[从菜鸟到高手演变]之GUI编程(一) 认识Java GUI编程

转眼间一年过去了&#xff0c;自从去年毕业以后博客就没怎么更新过了&#xff0c;一来是因为工作忙没有太多的时间去写&#xff0c;二来可能自己变得比较懒惰&#xff0c;所以就放下了。最近突然想继续整理下Java方面的东西&#xff0c;所以就接着写了。为什么选择Java GUI编程…

php docx,pptx,excel表格上传阿里云,腾讯云存储后截取第一页生成缩略图

php把word转图片的方法:首先给服务器安装libreoffice;然后使用exec函数来调用命令行操作;最后通过“exec(“soffice --headless --invisible…””方法把word转图片即可。 服务器环境:centos7 *集成环境:宝塔 我们开始给服务器安装libreoffice 直接执行下面的代码就可以…

FL Studio 21.2.3.3586 for Mac中文版新功能介绍及2024年最新更新日志

如果你正计划学习音乐制作&#xff0c;一款强大且易学的音乐制作软件是必不可少的。由于很多小伙伴对音乐制作软件没有实际体验过&#xff0c;到底选择哪一款软件最合适成为当下最纠结的问题。 这里为大家推荐一款功能强大且适合新手小伙伴的音乐编曲软件—FL Studio 21.2.3.35…

nginx 模块 高级配置

目录 一、高级配置 1.1. 网页的状态页 1.2.Nginx 第三方模块 ehco 模块 打印 1.3.变量 1.3.1 内置变量 1.3.2自定义变量 1.4.Nginx压缩功能 1.5.https 功能 1.6.自定义图标 一、高级配置 1.1. 网页的状态页 基于nginx 模块 ngx_http_stub_status_module 实现&…

The authenticity of host ‘github.com (20.205.243.166)‘ can‘t be established.

1、运行git clone报错&#xff1a; The authenticity of host github.com (20.205.243.166) cant be established. ECDSA key fingerprint is SHA256:p2QAC1TJYererOttrVc98/R1BWERWu3/LiyFdHfQM. Are you sure you want to continue connecting (yes/no/[fingerprint])? 这个…

【盲源分离】快速理解FastICA算法(附MATLAB绘图程序)

今天讲一个在信号分析领域较为常用的一个方法&#xff0c;即盲源分离算法中的FastICA。 我们先从一个经典的问题引入。 一、鸡尾酒舞会问题 想象一下&#xff0c;你身处一个熙熙攘攘的鸡尾酒舞会中。四周回荡着各种声音&#xff1a;笑声、交谈声、玻璃碰撞声&#xff0c;甚至…

物联网常见协议之MQTT 详解

一、简述 MQTT&#xff08;Message Queuing Telemetry Transport&#xff0c;消息队列遥测传输协议&#xff09;&#xff0c;是一种基于发布/订阅&#xff08;publish/subscribe&#xff09;模式的"轻量级"通讯协议&#xff0c;该协议构建于TCP/IP协议上&#xff0c…

基于PostgreSql操作空间数据Geometry类型

一、简介 空间数据是指用来表示空间实体的位置、形状、大小及其分布特征诸多方面信息的数据&#xff0c;它可以用来描述来自现实世界的目标&#xff0c;它具有定位、定性、时间和空间关系等特性&#xff0c;操作空间数据主要是指对点、线、面等基本结构的一个操作。 在Postgre…

javaEE图书馆自习室订座系统信用springmvc+springboot+mybatis

研究的内容是设计和实现图书馆自习室系统&#xff0c;便捷广大师生对自习室的使用&#xff0c;协助图书馆自习室管理。在设计过程中&#xff0c;系统的用户角色和权限分配如下&#xff1a; &#xff08;1&#xff09;馆长 用户管理&#xff1a;拥有自习室管理员、普通用户的所有…

如何准确获取PDF文件中的标题

想要在PDF文件中&#xff0c;解析获取全部的标题&#xff0c;是一件比较麻烦的事情。正是因为PDF文件中的内容可能是五花八门的格式&#xff08;论文、财报、法律条文、图书、报纸、等等&#xff09;。 但是获取标题信息&#xff0c;又是一件非常重要的事情。标题中往往蕴含着非…

优雅使用前端枚举Enum,符合国标的那种!

01、什么是枚举Enum&#xff1f; 枚举Enum是在多种语言中都有的一种数据类型&#xff0c;用于表示一组特定相关的常量数据集合&#xff0c;如性别&#xff08;男、女&#xff09;、数据状态&#xff08;可用、禁用&#xff09;、垂直对齐&#xff08;顶端、居中、底部&#xff…

AD9226 65M采样 模数转换

目录 AD9220_ReadTEST AD9220_ReadModule AD9226_TEST_tb 自己再写个 260M的时钟&#xff0c;四分频来提供65M的时钟。 用 vivado 写的 AD9226_ReadTEST module AD9226_ReadTEST( input clk, input rstn,output clk_driver, //模块时钟管脚 input [12:0]IO_data, //模块数…