06 JQuery调用接口

文章目录

  • 一、Qs.js库介绍
    • 1. Qs简介
    • 2. Qs.parse
    • 3. Qs.stringify
  • 二、jQuery调用接口
    • 1. 增加(Create)
    • 2. 删除(Delete)
    • 3. 读取(Read)
    • 4. 更新(Update)
  • 三、示例


一、Qs.js库介绍

1. Qs简介

Qs是一个url参数转化(parse和stringify)的js库。

  • 本地引入
<script src="qs-6.11.2.min.js"></script>
  • CDN引入
<script src="https://cdn.bootcdn.net/ajax/libs/qs/6.11.2/qs.min.js"></script>

2. Qs.parse

  • 字符串转换为对象
<script>let params = "a=a1&b=b1&c=c1"console.log(Qs.parse(params))
</script>
  • 控制台日志
    在这里插入图片描述

3. Qs.stringify

  • 对象转换为字符串
<script>let params = {a: "a1", "b": "b1", "c": "c1"}console.log(Qs.stringify(params))
</script>
  • 控制台日志
    在这里插入图片描述

二、jQuery调用接口

1. 增加(Create)

$.ajax({url: '/api/save',method: 'post',data: {name,status,},success(res) {console.log('数据创建成功');},error(error) {console.log(error);}
})

2. 删除(Delete)

$.ajax({url: '/api/delete',method: 'post',data: {role_id: id},success(res) {console.log('数据删除成功');},error(error) {console.log(error);}
})

3. 读取(Read)

$.ajax({url: '/api/list',method: "post",data: Qs.stringify(data),success(res) {res.data.forEach(function (item, index) {// 数据处理})},error(error) {console.log(error);}
})

4. 更新(Update)

$.ajax({url: '/api/update',method: 'post',data: {role_id,name,status,},success(res) {console.log('数据更新成功');},error(error) {console.log(error);}
})

三、示例

在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head><title>Test</title><link rel="icon" href="data:;base64,="><meta charset="UTF-8"><meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"><meta name="viewport" content="width=device-width, initial-scale=1.0"><script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.min.js"></script><script src="https://cdn.bootcdn.net/ajax/libs/qs/6.11.2/qs.min.js"></script>
</head>
<style>table, th, td {border: 1px solid;border-collapse: collapse;text-align: center;line-height: 30px;width: 600px;margin-top: 20px;}.dialog {display: none;width: 100%;height: 200vh;background-color: rgba(0, 0, 0, 1);position: absolute;top: 0;left: 0;line-height: 50px;} .dialog .container {margin: 10;font-size: 18px;width: 60%;height: 300px;background-color: #ffffff;text-align: center;} 
</style><body><input type="text"><button id="search">查询</button><button id="adddata">添加</button><table><thead><th>角色名称</th><th>状态</th><th>序号</th><th>操作</th></thead><tbody></tbody></table><!-- 添加和编辑框 --><div class="dialog"><div class="container"><div class="dialog_center"><div class="dialog_header">添加角色</div><div class="dialog_center" style="display:none;"><div>角色ID:<input type="text" name="role_id"></div></div><div class="dialog_center"><div>角色名称:<input type="text" name="name"></div></div><div class="dialog_center"><div>状态: 有效 <input type="radio" name="status" value="true">失效<input type="radio" name="status" value="false"></div></div><div class="dialog_center"><div>序号:<input type="text" name="sort"></div></div><div class="dialog_footer"><button class="submit">确定</button><button class="cancel">取消</button></div></div></div>
</body>
<script>var baseURL = "http://127.0.0.1:888/testmanage/api/testRole/"// 查询按钮$('#search').click(function () {$('tbody').empty();let temp = {name: $('input:first').val(),};$.ajax({url: baseURL + "list",method: "post",data: Qs.stringify(temp),success(res) {res.data.forEach(function (item, index) {var newTr =`<tr><td style="display:none;">${item.role_id}</td><td>${item.name}</td>	<td>${item.status}</td>	<td>${item.sort}</td>	<td><button class='toDelete' id='${item.role_id}'>删除</button><button class='toEdit' obj='${JSON.stringify(item)}'>修改</button></td>	</tr>`$('tbody').append(newTr)})},error(error) {console.log(error);}})})// 添加按钮$('#adddata').click(function () {$('.dialog').fadeIn()$('input[name=role_id]').val('')$('input[name=name]').val('')$('input[type=radio][value=true]').prop('checked', 'true')$('input[name=sort]').val('')})// 修改按钮$('table tbody').on('click', '.toEdit', function () {$('.dialog_header').html('修改角色')$('.dialog').fadeIn()obj = $(this).attr('obj')obj = JSON.parse(obj)$('input[name=role_id]').val(obj.role_id)$('input[name=name]').val(obj.name)$('input[type=radio][value = ' + obj.status + ']').prop('checked', 'true')$('input[name=sort]').val(obj.sort)})// 添加和编辑框 取消按钮$('.cancel').click(function () {$('.dialog').fadeOut()})// 添加和编辑框 确定按钮$('.submit').click(function () {var role_id = $('input[name=role_id]').val()var name = $('input[name=name]').val()var status = $('input[type=radio]:checked').val()var sort = $('input[name=sort]').val()var saveupdate = 'update'if (role_id == '') {saveupdate = 'save'}$.ajax({url: baseURL + saveupdate,method: 'post',data: {role_id,name,status,sort,},success(res) {console.log(res);$('.dialog').fadeOut()$('#search').trigger('click')},error(error) {console.log(error);}})})// 删除按钮$('table tbody').on('click', '.toDelete', function () {var id = $(this).attr('id')$.ajax({url: baseURL + 'delete',method: 'post',data: {role_id: id},success(res) {$('#search').trigger('click')},error(error) {console.log(error);}})})// 打开页面时查询$('#search').trigger('click')
</script>
</html>

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

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

相关文章

代码随想录算法训练营 --- 第五十九天

今天同样是单调栈&#xff0c;第二题很重要。 第一题&#xff1a; 简介&#xff1a; 本题可以说和上一题很是相似&#xff0c;只是有一点不同&#xff0c;数组是循环的。本题有两种巧妙地解法&#xff0c;都不难。 第一种方法&#xff08;也是第一个想出来的方法&#xff09…

我的acer电脑U盘装系统前BIOS设置及装系统过程中的操作

1、开机长按F2进入BIOS设置 2、使能F12 3、调整boot顺序&#xff0c;使USB启动的优先级最高 4、按F10保存退出 5、插入U盘开机&#xff0c;boot选择界面无需操作&#xff0c;等待几秒&#xff0c;默认进入U盘系统 由于既使能了F12&#xff0c;又将U盘的优先级进调整到了最高&…

OpenVINS学习1——数据集配置与运行

前言 OpenVINS是基于MSCKF的开源VIO算法&#xff0c;有非常详细的官网文档可以学习使用&#xff0c;将来一段时间的主要实践工作&#xff0c;就是深度掌握这份开源代码。 https://docs.openvins.com/ 一、环境配置与Euroc数据集运行 我的环境是Ubuntu20.04&#xff0c;ROS1&a…

vue3中实现el-tree通过ctrl或shift批量选择节点并高亮展示

一、看效果&#xff1a; 按住ctrl键实现单个多选 按住shift实现区间范围多选 二、代码&#xff1a; vue页面 <template><el-treeclass"w100%":data"$.treeData"ref"treeTab…

Unity中Batching优化的静态合批

文章目录 前言一、静态合批的规则1、模型使用同一个材质2、勾选静态合批3、对于静态合批后的Mesh顶点总数&#xff0c;不超过2^16^即可以使用同一批次&#xff0c;超过则会开启一个新的批次4、对与使用同一材质的不同模型间&#xff0c;纹理贴图的问题&#xff0c;我们可以通过…

数据可视化工具选择:功能、易用性与安全性

作为一名数据可视化大屏设计师&#xff0c;我深知选择一款合适的数据可视化工具对于提高工作效率和呈现效果的重要性。下面&#xff0c;我将从真正对我们数据可视化大屏设计师有用的角度为大家介绍选择数据可视化工具的一些必要条件和要求。 1. 功能强大与灵活定制 首先&…

如何做好口译服务,同传和交传哪个服务好

随着中国经济的蓬勃发展和综合实力的不断增强&#xff0c;中国与世界各国的交流也日益频繁。口译作为对外交流的桥梁与纽带&#xff0c;需求量与日俱增&#xff0c;其重要性不言而喻。那么&#xff0c;如何做好口译服务呢&#xff1f;是同传还是交传更好呢&#xff1f; 业内专家…

机器人纯阻抗控制接触刚性环境

问题描述 在机器人学中&#xff0c;阻抗控制是一种常用的控制策略&#xff0c;用于管理机器人在与环境交互时的运动和力。阻抗控制背后的关键概念是将环境视为导纳&#xff0c;而将机器人视为阻抗。 纯阻抗控制接触刚性环境时&#xff0c;机器人的行为方式主要受其阻抗参数的…

表单小程序作用体现在哪

表单的用途非常广泛&#xff0c;它是线上收集信息或用户预约/需求服务的重要方式&#xff0c;对商家来说如今线上平台非常多&#xff0c;生意开展的形式也越来越多&#xff0c;比如常见的预约、报名、收款、产品支付等都可以通过表单实现。 接下来啊让我们看看通过【雨科】平台…

解决:During handling of the above exception, another exception occurred

解决&#xff1a;During handling of the above exception, another exception occurred 文章目录 解决&#xff1a;During handling of the above exception, another exception occurred背景报错问题报错翻译报错位置代码报错原因解决方法参考内容&#xff1a;今天的分享就到…

numpy数据读取保存及速度测试

目录 数据保存及读取 速度比对测试 数据保存及读取 代码示例&#xff1a; # 导入必要的库 import numpy as np # 生成测试数据 arr_disk np.arange(8) # 打印生成能的数据 print(arr_disk) # numpy保存数据到本地 np.save("arr_disk", arr_disk) # 加载本地数据…

排序算法-插入/希尔排序

1 插入排序 1.1基本思想&#xff1a; 直接插入排序是一种简单的插入排序法&#xff0c;其基本思想是&#xff1a;把待排序的记录按其关键码值的大小逐个插入到一个已经排好序的有序序列中&#xff0c;直到所有的记录插入完为止&#xff0c;得到一个新的有序序列 。 1.2直…

【js】js实现多个视频连续播放:

文章目录 一、效果&#xff1a;二、实现&#xff1a; 一、效果&#xff1a; 二、实现&#xff1a; <!DOCTYPE html> <html> <head><title>Video Player</title><style>#progressBar { width: 800px;height: 20px;background-color: #dd…

【Vulnhub 靶场】【Momentum: 2】【简单】【20210628】

1、环境介绍 靶场介绍&#xff1a;https://www.vulnhub.com/entry/momentum-2,702/ 靶场下载&#xff1a;https://download.vulnhub.com/momentum/Momentum2.ova 靶场难度&#xff1a;简单 发布日期&#xff1a;2021年06月28日 文件大小&#xff1a;698 MB 靶场作者&#xff1…

uni-app实现安卓原生态调用身份证阅读器读卡库读身份证和社保卡、银行卡、IC卡等功能

DONSEE系列多功能读写器Android Uniapp API接口规范V1.0.0 本项目Uniapp调用了身份证读卡器的库文件&#xff1a;DonseeDeviceLib-debug.aar&#xff0c;该库放到nativeplugins\donsee-card\android&#xff0c;然后会自动加载。SDK会自动检查是否拥有USB设备权限&#xff0c;…

同旺科技 USB TO RS-485 定制款适配器--- 拆解(三)

内附链接 1、USB TO RS-485 定制款适配器 ● 支持USB 2.0/3.0接口&#xff0c;并兼容USB 1.1接口&#xff1b; ● 支持USB总线供电&#xff1b; ● 支持Windows系统驱动&#xff0c;包含WIN10 / WIN11系统32 / 64位&#xff1b; ● 支持Windows RT、Linux、Mac OS X、Windo…

《洛谷深入浅出进阶篇》p2568 GCD

P2568 GCD - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)https://www.luogu.com.cn/problem/P2568 大致题意&#xff1a;给定正整数n&#xff0c;求1< x,y<n 且 gcd&#xff08;x&#xff0c;y&#xff09;为素数的数对&#xff08;x&#xff0c;y&#xff09;有多少对。…

一文搞懂全连接算法和它的作用

如果你是搞AI算法的同学&#xff0c;相信你在很多地方都见过全连接层。 无论是处理图片的卷积神经网络&#xff08;CNN&#xff09;&#xff0c;还是处理文本的自然语言处理&#xff08;NLP&#xff09;网络&#xff0c;在网络的结尾做分类的时候&#xff0c;总是会出现一个全…

国外小哥综合传统CGI和AI技术制作出融合Lofi音乐与人工智能动画作品

这个视频制作花费了18个小时&#xff0c;渲染则耗费了4个小时&#xff0c;使用了Midjourney、PS GenFill、After Effects和Magnific AI等工具。 国外小哥综合传统CGI和AI技术制作出融合Lofi音乐与人工智能动画作品 大致制作流程&#xff1a; Midjourney出图&#xff0c;PS Gen…

带大家做一个,易上手的家常辣子鸡

先从冰箱拿出鸡肉解冻 拿小半根葱 去掉最外面一层皮 切成小段 最备好 花椒 干辣椒 准备四五个大料 起锅烧油 这道菜需要放其他菜两到三倍的油 油温上来之后 放入干辣椒和花椒进行翻炒 等它们都烧黑之后捞出来 这样 辣味就留在油里面了 然后 倒入鸡肉 葱段 大料 然后 倒…