前端学习第一课

news2025/1/21 18:05:48

AJAX

事先说明,这只是记录,并不是从零到一的教学内容,如果想要学习的话,可以跳过本文章了
ok,转回正题,正如上面所说,这只是记录。其实我是有一定的前端基础的,也做过涉及相关的开发,但是最近新工作要求用ajax进行一些工作,仅靠我之前那二两水的技术是大大不行的,所以需要统一系统的学习一波,正好把学习过程中的一些知识点做个记录积累,很好,下面开始这篇博客的正文内容

AJAX介绍

这个自己看官网啦,不是很重要,大概了解一下就好。
在这里插入图片描述

上面是W3C的介绍,如果想知道更多的话可以点击下面的链接
WSC网址详细内容点击即看

AJAX的使用及其特点

AJAX的一个最大特点就是:
无需刷新页面便可向服务器传输或读写数据而这个特点主要得益于XMLHTTP组件的XMLHTTPRequest对象
XMLHTTPRequest对象方法及其描述:
所有现代浏览器(Chrome、Firefox、IE、Edge、Safari、Opera)都有内置的 XMLHttpRequest 对象。

XMLHttpRequest 对象方法
在这里插入图片描述

XMLHttpRequest 对象属性

在这里插入图片描述

把配置好信息的 ajax 对象发送到服务端的一个详细的使用示例,如下所示:

// 创建 XMLHttpRequest 对象
const xhttp = new XMLHttpRequest();

// 定义回调函数
xhttp.onload = function() {
  // 您可以在这里使用数据
}

// 发送请求
xhttp.open("GET", "ajax_info.txt");
xhttp.send();

AJAX状态码

ajax有自己的状态码,每次当readyState改变时都会调用onreadystatechange函数,并且当readyState为4且status为200的时候,响应就绪,我们才可以正常使用服务端给我们的数据
在这里插入图片描述

请求方式

GET请求

GET请求与POST请求相比,GET更简单也更快,并且大部分情况下都是通用的。但是注意,以下几种情况,需要使用POST请求

  • 缓存文件不是选项(更新服务器上的文件或数据库)
  • 向服务器发送大量数据(POST 无大小限制)
  • 发送用户输入(可包含未知字符),POST 比GET 更强大更安全

AJAX实际运用

实现ajax的方式有多种,
1、jQuery封装的ajax
2、原生的XMLHttpRequest
3、axios

以上都可以实现异步网络请求。
下面用具体案例来实现ajax的实际运用:

案例一:当鼠标离开账号输入框的时候,发送一个ajax检测账号是否存在

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>用户注册</title>
    <script src="jslib/jquery-3.6.1.js"></script>
</head>
<body>
    <form action="regservlet" method="post">
        账户名:<input name="username" id="email"><span id="usernameInfo"></span><br>
        密码:<input type="password" name="password"> <br>
        昵称:<input name="nikename"><br>
        <input type="submit" value="注册"> <input type="reset" value="重置">
    </form>
    <script>
        $("#username").blur(function () {
            //发送一个ajax的post请求
            $.post("CheckEmailServlet",{em:this.value},function (data) {
                if(data == "f"){
                    $("#usernameInfo").css("color","green").html("恭喜你,此账户名合法。")
                } else {
                    $("#usernameInfo").css("color","red").html("很遗憾,此账户名非法。")
                }
            });
        });
    </script>
</body>
</html>

案例二:axios发送请求

//需要引入axios.js文件
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>
 
<body>
    <button id="btn2">axios发送POST请求</button> 
<script>
document.querySelector('#btn2').addEventListener('click', function () {
      axios({
        method: 'POST',
        url: '发送请求的URL地址',
        data: {
          name: 'dy',
          age: 3,
          sex: '女'
        }
      }).then(function (res) {
        res = res.data
        console.log(res)
      })
    })
  </script>

其他的也不过多介绍啦,大概情况就是这样的

ps:其实在实际开发中很少会用到原生的ajax进行开发的,大部分时候都会对ajax进行封装,常用的还是axios。但是大概的内容还是需要了解的

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

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

相关文章

【线性系统理论】笔记三

能控性判别 约当标准型 总结&#xff1a; 秩的判据 能观性判别 秩判据 能控Ⅰ型&能控Ⅱ型 1型 2型 能控性分解&能观型分解

【高阶数据结构(四)】图的最短路径问题

&#x1f493;博主CSDN主页:杭电码农-NEO&#x1f493;   ⏩专栏分类:高阶数据结构专栏⏪   &#x1f69a;代码仓库:NEO的学习日记&#x1f69a;   &#x1f339;关注我&#x1faf5;带你学习更多数据结构   &#x1f51d;&#x1f51d; 高阶数据结构 1. 前言2. 单源最短…

Python代码:三、读入字符串

1、题目 从变量输出开始。请使用input函数读入一个字符串&#xff0c;然后将其输出。 2、代码 import sys ainput() print(a) 3、在sublime运行的结果

从光伏监测到智慧农业,漫途LoRa产品多领域应用

随着物联网&#xff08;IoT&#xff09;技术的飞速发展&#xff0c;对数据传输的稳定性和低功耗特性的需求日益增加。在这一背景下&#xff0c;LoRa凭借更远的传输距离以及出色的抗干扰能力&#xff0c;展现出了显著的优势。这种特性使得LoRa在复杂多变的环境中表现尤为突出&am…

商品服务:SPUSKU规格参数销售属性

1.Object划分 1.PO&#xff08;Persistant Object&#xff09;持久对象 PO就是对应数据库中某个表中的一条记录&#xff0c;多个记录可以用PO的集合。PO中应该不报含任何对数据库的操作 2.DO(Domain Object) 领域对象 就是从现实世界中抽象出来的有形或无形的业务实体。 3…

H3C IPSec配置手记

实验拓扑&#xff1a; 设备型号&#xff1a;H3C MSR36-20 接口地址&#xff1a;ipsec1 g0/0&#xff0c;1.1.1.1 ipsec2 g0/0&#xff0c;1.1.1.2 IPSec1内部地址&#xff1a;172.16.168.0/24 IPSec2内部地址&#xff1a;192.168.168.0/24 目的&#xff1a;建立IPSec隧道&a…

数字化社会的引擎:揭示Facebook的影响力

在当今数字化社会中&#xff0c;社交媒体平台扮演着至关重要的角色&#xff0c;而Facebook作为其中的巨头之一&#xff0c;其影响力不可忽视。本文将深入探讨Facebook的影响力&#xff0c;从多个角度揭示其在数字化社会中的引擎作用。 1. 社交互动的核心平台 Facebook作为社交…

多客陪玩系统源码,线上游戏开黑陪玩,线下预约家政服务,语音陪聊,陪玩成品搭建,源码交付,支持二开,陪玩系统开发

游戏陪玩系统主要的优势就是&#xff0c;只要有手游和网游不断推出&#xff0c;就有钱可赚。为什么呢?因为电竞行业正处于上升发展阶段&#xff0c;而且玩游戏对于现代人来说是很好的一种解压方式&#xff0c;所以在市场和用户需求方面都是有保证的。再加上现代人的社交压力越…

亚马逊Prime Day旺季备货遭遇美国海关查验高峰,应对策略全攻略!

随着全球化贸易的日益繁荣&#xff0c;跨境电商企业在旺季备货时面临着巨大的挑战&#xff0c;尤其是当遇到美国海关查验潮时&#xff0c;如何应对成为众多商家关注的焦点。本文将从分析美国海关查验的原因入手&#xff0c;为商家提供一系列应对策略和建议。 一、美国海关查验潮…

电脑恢复出厂设置怎么弄?让你的电脑焕然一新!

电脑恢复出厂设置是一种常见的操作&#xff0c;它可以帮助用户将电脑恢复到初始状态&#xff0c;清除所有数据和设置&#xff0c;使其恢复到出厂时的状态。这对于解决系统故障、清除个人数据以及重新配置电脑等情况非常有用。可是电脑恢复出厂设置怎么弄呢&#xff1f;本文将介…

碳纳米管须状触嗅觉多模态融合传感器在皮革奢侈品真伪鉴定下的设计探索

一、设计方案 1.传感器选择 触觉传感器&#xff1a;选择基于碳纳米管&#xff08;CNT&#xff09;聚合物的柔性MEMS触觉微传感器&#xff0c;由于碳纳米管具有高度的灵敏度和选择性、柔韧性&#xff0c;可以作为触觉传感器&#xff0c;检测材料的微观结构和机械特性。嗅觉传感…

CSS学习笔记之中级教程(二)

CSS学习笔记之中级教程&#xff08;一&#xff09; 6、CSS 布局 - display: inline-block 与 display: inline 相比&#xff0c;主要区别在于 display: inline-block 允许在元素上设置宽度和高度。 同样&#xff0c;如果设置了 display: inline-block&#xff0c;将保留上下外…

开源标注工具LabelMe的使用

开源标注工具LabelMe使用Python实现&#xff0c;并使用Qt作为其图形界面&#xff0c;进行图像多边形标注。源码地址:https://github.com/labelmeai/labelme &#xff0c;最新发布版本为v5.4.1&#xff0c;它遵循GNU通用公共许可证的条款。 1.Features (1).多边形、矩形、圆形、…

GDPU Java 天码行空12

&#xff08;一&#xff09;实验目的 1、掌握JAVA中多线程的实现方法&#xff1b; 2、重点掌握多线程的同步与通信机制&#xff1b; 3、熟悉JAVA中有关多线程同步与通信的方法 &#xff1b; 4、能使用多线程机制解决实际应用中的线程同步与通信问题。 &#xff08;二&#xf…

抖音小店有订单后怎么发货?实操分享!发货全流程来了

哈喽~我是电商月月 做无货源抖音小店的店铺在出单后怎么发货&#xff1f;今天我就来给大家解答这个问题&#xff0c;其中的注意事项新手商家可以收藏一下&#xff0c;避免犯错 抖音小店的商品出单后&#xff0c;商家在“管理中心-订单管理”页面就能看见所有待处理的订单 一…

haddoop三大核心组件

hadoop三大核心组件分别是hdfs、mapreduce和yarn。 1、hdfs&#xff1a;即分布式文件系统&#xff0c;用于存储hadoop集群中的大量数据。具有高容错性&#xff0c;可跨多个数据节点存储数据&#xff0c;并提供高吞吐量的数据访问&#xff1b; 2、mapreduce&#xff1a;用于大…

羊大师:羊奶健康的成长伴侣

羊大师&#xff1a;羊奶健康的成长伴侣 在追求健康生活的当下&#xff0c;越来越多的人开始关注饮食的营养与健康。羊大师发现在众多天然食品中&#xff0c;羊奶以其独特的营养价值和健康益处&#xff0c;逐渐成为了人们的新宠。特别是对于正在成长发育的孩子们来说&#xff0…

数据结构与算法学习笔记十三---数组的顺序表示和实现(C语言)

目录 前言 一、什么是数组 二、数组的顺序存储 1.定义 2.初始化 3.销毁数组 4.获取指定下标的数据元素 5.给数组中的数据元素赋值 6.完整代码 前言 这篇文章主要介绍数组的顺序存储。 一、什么是数组 数组是由类型相同的数据元素构成的有序集合&#xff0c;每个元素成…

【CTF Web】NSSCTF 3861 [LitCTF 2023]我Flag呢?Writeup(信息收集+源码泄漏+代码审计)

[LitCTF 2023]我Flag呢&#xff1f; 奇怪&#xff0c;放哪里了&#xff0c;怎么看不见呢&#xff1f;&#xff08;初级难度&#xff09; 解法 按下 F12&#xff0c;打开开发者工具。找到 flag。 <!DOCTYPE html> <html><head><meta charset"utf-8&q…