第二十一章 Jquery ajax

文章目录

    • 1. jquery下载
    • 2. jquery的使用
    • 3. jquery页面加载完毕执行
    • 4. jquery属性控制
    • 6. 遍历器
  • 2. ajax
    • 1. 准备后台服务器
    • 2. ajax发送get请求
    • 3. ajax发送post请求

1. jquery下载

点击下载

稳定版本1.9
在这里插入图片描述

2. jquery的使用

存放到html文件的同级目录
在这里插入图片描述

3. jquery页面加载完毕执行

<script src="jquery.js"></script>
<script>
   $(function(){
       
   })
</script>

jquery的选择器
$(“.”) 类选择
$(“*”)id选择

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="jquery.js"></script>
    <script>
        $(function(){
            $("#btn").click(function(){ //id选择
                console.log("点击了一下")
            })
        })
    </script>

</head>
<body>
    <input type="button" id="btn" value="按钮">
</body>
</html>

4. jquery属性控制

  1. val()
  2. text()
  3. html()
  4. attr()
  5. css()
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="jquery.js"></script>
    <script>
        $(function(){
            $("#btn").click(function(){
                let val = $(".wb").val();//选择class=wb的文本框,获取文本框内的值
                //获取文本后清理文本框
                $(".wb").val("")

                //将获取到的文本,丢到div中去
                $(".mydiv").html($(".mydiv").html() + val + "<br/>");
            });
        })
    </script>

</head>
<body>
    <input type="button" id="btn" value="按钮">
    <input type="text" name="txt" class="wb">
    <hr/>
    <div class="mydiv"></div>
</body>
</html>

在这里插入图片描述

设置/获取CSS样式

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="jquery.js"></script>
    <script>
        $(function(){
            $("#btn").click(function(){
                let display = $(".mydiv").css("display"); //获取CSS的样式
                if(display=='none'){
                    $(".mydiv").css("display","block"); //配置CSS样式
                   } else {
                        $(".mydiv").css("display","none");
                   }
            });
        })
    </script>

</head>
<body>
    <input type="button" id="btn" value="按钮">
    <input type="text" name="txt" class="wb">
    <hr/>
    <div class="mydiv" style="width:500px;height:50px;display:none;">测试</div>
</body>
</html>
  • attr()
<script>
    $(function(){
        $("#btn").click(function(){
            $(".mydiv").attr("id","Jack")
            console.log($(".mydiv").attr("id"))
        })
    })
</script>

6. 遍历器

each

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script src="jquery.js"></script>

    <script>
        $(function(){
           $("ul>li").each(function(i,data){
                console.log(i)
                console.log($(data).text())
           })
        })
    </script>
</head>
<body>
<ul>
    <li>Jack</li>
    <li>Lucy</li>
    <li>Tom</li>
    <li>Jary</li>
</ul>
</body>
</html>

2. ajax

1. 准备后台服务器

用Flask来搭建一个后台服务

pip install flask -i https://pypi.tuna.tsinghua.edu.cn/simple
from flask import Flask

app = Flask(__name__)

@app.route("/")
def root():
    print("访问根目录")
    return "网站首页"

if __name__ == '__main__':
    app.run()

在这里插入图片描述

使用render_template引入网页

from flask import Flask, render_template

app = Flask(__name__)

@app.route("/")
def root():
    print("访问根目录")
    name = "Jack"
    return render_template("index.html",data=name)

if __name__ == '__main__':
    app.run()

在这里插入图片描述

新建static放入jquery
在这里插入图片描述

2. ajax发送get请求

    <script src = "./static/jquery.js"></script>
    <script>
        $(function(){//页面加载运行
            $(".btn").click(function(){//点击按钮触发事件
                $.ajax({//发送ajax请求
                    url:"/btn_get",
                    method:"get",
                    data:{
                        name:"",
                        pwd:"mima",
                    },
                    headers:{
                        refer:"https://www.baidu.com",
                    },
                    //另一种请求头
                    beforeSend: function(req){
                        req.setRequestHeader("refer2","https://www.other.baidu.com")
                    },
                    success:function(d){
                        console.log(d);
                    }

                })
            })
        })

  • 接收get请求数据
@app.route("/btn_get")
def func_get():
    name = request.args.get("name")
    pwd = request.args.get("pwd")
    if not name or not pwd:
        return "请输入用户或密码"
    print(name,pwd)
    return "登录成功"

3. ajax发送post请求

<script>
    $(function(){
        $(".btn2").click(function(){
            $.ajax({
                url:"/btn_post",
                method:"post",
                data:JSON.stringify({
                    name:"Tom",
                    pwd:"mima",
                }),
                headers:{
                    "Content-Type": "application/json",
                },
                dataType:"text",
                success:function(d){
                    console.log(d);
                }

            })
        })

    })

</script>
  • 接收json数据
@app.route("/btn_post",methods=["POST"])
def func_post():
    response = make_response("Hello world")
    response.headers['Content-Type']= 'text/html; charset=utf-8'
    data = request.json
    print(data)
    return "收到post请求"

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

verilog设计-cdc:多比特信号跨时钟域(DMUX)

一、前言 多比特一般为数据&#xff0c;其在跨时钟域传输的过程中有多种处理方式&#xff0c;比如DMUX&#xff0c;异步FIFO&#xff0c;双口RAM&#xff0c;握手处理。本文介绍通过DMUX的方式传输多比特信号。 二、DMUX同步跨时钟域数据 dmux表示数据分配器&#xff0c;该方…

HarmonyOS 应用开发之UIAbility组件生命周期

概述 当用户打开、切换和返回到对应应用时&#xff0c;应用中的UIAbility实例会在其生命周期的不同状态之间转换。UIAbility类提供了一系列回调&#xff0c;通过这些回调可以知道当前UIAbility实例的某个状态发生改变&#xff0c;会经过UIAbility实例的创建和销毁&#xff0c;…

PCB损耗来源

信号经过PCB板会产生损耗&#xff0c;主要包括导体损耗&#xff0c;介电损耗和辐射损耗 导体损耗&#xff1a;导体损耗是由于电流流动过程中产生电阻损耗而发热。 介电损耗&#xff1a;介电损耗是由于电场通过介质时分子的交替极化和晶格碰撞造成的。 辐射损耗&#xff1a;辐…

React 应用实现监控可观测性最佳实践

前言 React 是一个用于构建用户界面的 JavaScript 框架。它采用了虚拟 DOM 和 JSX&#xff0c;提供了一种声明式的、组件化的编程模型&#xff0c;以便更高效地构建用户界面。无论是简单还是复杂的界面&#xff0c;React 都可以胜任。 YApi 是使用 React 编写的高效、易用、功…

报表生成器FastReport .Net用户指南:脚本示例

FastReport的报表生成器&#xff08;无论VCL平台还是.NET平台&#xff09;&#xff0c;跨平台的多语言脚本引擎FastScript&#xff0c;桌面OLAP FastCube&#xff0c;如今都被世界各地的开发者所认可&#xff0c;这些名字被等价于“速度”、“可靠”和“品质”,在美国&#xff…

[Flutter]环境判断

方式一&#xff08;推荐&#xff09; 常量kReleaseMode&#xff0c;它会根据你的应用是以什么模式编译的来获取值。bool.fromEnvironment会从Dart编译时的环境变量中获取值。对于dart.vm.product这个特定的环境变量&#xff0c;它是由Dart VM设置的&#xff0c;用来标明当前是…

基于PaddleNLP的深度学习对文本自动添加标点符号(二)

前言 基于PaddleNLP的深度学习对文本自动添加标点符号的源码版来了&#xff0c;本篇文章主要讲解如何文本自动添加标点符号的原理和相关训练方法&#xff0c;前一篇文章讲解的是使用paddlepaddle已经训练好的一些模型&#xff0c;在一些简单场景下可以通过这些模型进行预测&…

华为防火墙配置指引超详细(包含安全配置部分)以USG6320为例

华为防火墙USG6320 华为防火墙USG6320是一款高性能、高可靠的下一代防火墙,适用于中小型企业、分支机构等场景。该防火墙支持多种安全功能,可以有效抵御网络攻击,保护网络安全。 目录 华为防火墙USG6320 1. 初始配置 2. 安全策略配置 3. 防火墙功能配置 4. 高可用性配…

Git,GitHub,Gitee,GitLab 四者有什么区别?

目录 1. Git 2. GitHub 3. Gitee 4. GitLab 5. 总结概括 1. Git Git 是一个版本管理工具&#xff0c;常应用于本地代码的管理&#xff0c;下载完毕之后&#xff0c;我们可以使用此工具对本地的资料&#xff0c;代码进行版本管理。 下载链接&#xff1a; Git - Downlo…

前端项目在本地localhost可以调取到拍照或麦克风等设备,但是在局域网内IP+端口号访问项目时访问不到设备

前端项目在本地localhost可以调取到拍照或麦克风等设备&#xff0c;但是在局域网内IP端口号访问项目时访问不到设备&#xff0c;调取navigation.mediaDevices时本科可以获取到mediaDevices列表&#xff0c;局域网内ip端口访问时获取不到mediaDevices。 原因&#xff1a; 存在…

vector类(二)

文章目录 vector类的模拟实现1.默认成员变量和函数2.迭代器函数3.空间容量和长度4.[ ]下标调用5.插入操作&#xff08;尾插&#xff09;6.调整容量大小7.判空操作8.删除操作9.插入操作10.size空间大小11.消除操作 vector类的模拟实现 1.默认成员变量和函数 首先自定义构造vec…

uni-app(自定义题色变量)

1.安装sass npm i sass -D 2.安装sass-loader npm i sass-loader10.1.1 -D 3.创建自定义文件 在根目录static目录下&#xff0c;创建scss->_them.scss&#xff0c;目录名称及文件名称自定义即可。 4.定义颜色变量 在_them.scss中&#xff0c;自定义颜色变量&#xff0…

纯分享万岳外卖跑腿系统客户端源码uniapp目录结构示意图

系统买的是商业版&#xff0c;使用非常不错有三端uniapp开源代码&#xff0c;自从上次分享uniapp后有些网友让我分享下各个端的uniapp下的各个目录结构说明 我就截图说以下吧&#xff0c;

鸿蒙OS开发实例:【Web网页】

背景 HarmonyOS平台通过Web控件可支持网页加载展示&#xff0c;Web在中是作为专项参考的。 本篇文章将从Android和iOS平台研发角度出发来实践学习API功能 说明 整个示例是以HarmonyOS开发文档网址作为加载目标页面布局增加了三个按钮“后退”&#xff0c;“前进”&#xff…

Redis、Mysql双写情况下,如何保证数据一致

Redis、Mysql双写情况下&#xff0c;如何保证数据一致 场景谈谈数据一致性三个经典的缓存模式Cache-Aside Pattern读流程写流程 Read-Through/Write-Through&#xff08;读写穿透&#xff09;Write behind &#xff08;异步缓存写入&#xff09; 操作缓存的时候&#xff0c;删除…

Solidity Uniswap V2 Router swapTokensForExactTokens

最初的router合约实现了许多不同的交换方式。我们不会实现所有的方式&#xff0c;但我想向大家展示如何实现倒置交换&#xff1a;用未知量的输入Token交换精确量的输出代币。这是一个有趣的用例&#xff0c;可能并不常用&#xff0c;但仍有可能实现。 GitHub - XuHugo/solidit…

联想 lenovoTab 拯救者平板 Y700 二代_TB320FC原厂ZUI_15.0.677 firmware 线刷包9008固件ROM root方法

联想 lenovoTab 拯救者平板 Y700 二代_TB320FC原厂ZUI_15.0.677 firmware 线刷包9008固件ROM root方法 ro.vendor.config.lgsi.market_name拯救者平板 Y700 ro.vendor.config.lgsi.en.market_nameLegion Tab Y700 #ro.vendor.config.lgsi.short_market_name联想平板 ZUI T # B…

JMM Java内存模型

JMM本身是一个抽象的概念,不是真实存在的,它仅仅是一种规定或者说是规范 1.用来实现线程和主内存直接的抽象关系 2.屏蔽各个硬件平台和操作系统的内存访问差异,使得java程序在各种平台都能达到一致的内存访问效果 JMM的三大特性 可见性 多线程环境下,某个线程修改了变量…

Day55:WEB攻防-XSS跨站CSP策略HttpOnly属性Filter过滤器标签闭合事件触发

目录 XSS跨站-安全防御-CSP XSS跨站-安全防御-HttpOnly XSS跨站-安全防御-XSSFilter(过滤器的意思) 1、无任何过滤 2、实体化 输入框没有 3、全部实体化 利用标签事件 单引号闭合 4、全部实体化 利用标签事件 双引号闭合 5、事件关键字过滤 利用其他标签调用 双引号闭合…

Groovy基础入门

一、Groovy简介 Groovy是运行在JVM中的一种动态语言&#xff0c;可以在Java平台上进行编程&#xff0c;使用方式基本与使用Java代码的方式相同&#xff0c;它的语法与Java语言的语法很相似&#xff0c;与Java相比&#xff0c;Groovy更加灵活、简洁&#xff0c;而且完成同样的功…