Ajax技

Ajax的特点

  1. 异步提交:Ajax采用异步通信方式,能够在页面无需重新加载的情况下向服务器发送请求并接收响应数据,提升了用户体验。
  2. 无需插件:Ajax是基于标准浏览器的Javascript和XMLHttpRequest对象实现的,无需安装插件或控件。
  3. 局部刷新:Ajax能够实现局部刷新,只更新需要更新的部分,而不是整个页面。
  4. 支持多种格式数据交互:Ajax不仅支持XML格式数据交互,还支持JSON、HTML、文本等多种格式的数据交互。
  5. 提高性能:因为Ajax可以在页面保留数据,只更新需要更新的部分,减少了不必要的请求和响应,从而提高了网站性能。
  6. 提供多种编程语言支持:Ajax不仅支持Javascript编程,还支持其他编程语言,如PHP、ASP、Python等。
  7. 可以实现动态效果:Ajax可以用来实现动态效果,如自动补全、搜索框提示、无限滚动等。

Ajax案列

 views

from django.shortcuts import render, HttpResponsedef a_ajax(request):if request.method == 'POST':"""接受ajax提交的数据"""print(request.POST)  # <QueryDict: {'inp1': ['1'], 'inp2': ['1']}># d1 = request.POST.get('inp1')# d2 = request.POST.get('inp2')# d3 = int(d1)+int(d2)# print(d3)l_dict = {'username': 'kk', 'password': 123}import jsonreturn HttpResponse(json.dumps(l_dict))return render(request, 'a_ajax.html')

HTML文件

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Title</title><script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.min.js"></script><link href="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.css" rel="stylesheet">
{#    <script src="https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/4.2.1/js/bootstrap.bundle.min.js"></script>#}
</head>
<body>
<input type="text" id="inp1">+
<input type="text" id="inp2">=
<input type="text" id="inp3">
<button class="btn">提交</button>
</body>
</html><script>$('.btn').click(function() {var inp1 = $("#inp1").val();var inp2 = $("#inp2").val();//获取到的数据返回到后端,使用python来计算$.ajax({url: '',//不写默认朝当前地址传递type: 'post',//默认为getdata: {inp1: inp1, inp2: inp2},//回调函数用来压接受后端返回的数据success: function (res) {console.log(res)//获取值{#$("#inp3").val(res)#}//进行返序列化//后端返回的数据别忘记返序列化,后端记得序列化res = JSON.parse(res)console.log(res.username)console.log(res.password)}})})
</script>

前后端传输数据的编码格式

        我们只研究post请求方式,get没有请求方式,他的格式为

get:index(地址)?a=1&b=2

参数直接在url后面

post的请求方式

form表单

Ajax

api工具

1. form表单的post请求

默认的编码格式:urlencode

数据的传输方式:title=dasdas&price=2312&date=&publish=2&authors=3,k,v形式的键值对传输

后端如何接收:把前端提交的数据封装到request.POST中,而传输的文件则在request.FILES中

提交form-data文件数据:enctype:form-data

传输方式:title=dasdas&price=2312&date=&publish=2&authors=3

2. Ajax提交POST请求

默认Ajax提交数据 还是在request,POST中接受,默认编码格式urlencode

需要修改的contype:json

3. Ajax提交json的格式数据

json格式的数据提交后

设置提交json格式:

                $.ajax({url: '',//不写默认朝当前地址传递type: 'post',//默认为getdata: JSON.stringify({inp1:inp1, inp2:inp2}),contentType: 'application/json',//回调函数用来压接受后端返回的数据success: function (res) {console.log(res)

4. Ajax提交文件数据

<script>$(".btn").click(function (ev) {console.log(123);// 要获取到文件数据,{#console.log($("#myfile")[0].files[0]) // C:\fakepath\123.png#}// 提交文件数据需要借助于formdata对象var myFormDataObj = new FormData;var username = $("#username").val();var myfile = $("#myfile")[0].files[0];myFormDataObj.append('username', username);myFormDataObj.append('myfile',myfile);$.ajax({url: '',type: 'post',{#data: JSON.stringify({a: 1, b: 2}), // 序列化的     "{"a":1, "b":2}"#}data: myFormDataObj, // 序列化的     "{"a":1, "b":2}"{#contentType: 'application/json', // json格式的#}contentType:false, // 告诉浏览器不要给我的编码格式做任何的处理processData: false, //success: function (res) {}})})
</script>

wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==

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

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

相关文章

2014年10月6日 Go生态洞察:Go在Google I/O和Gopher SummerFest的应用

&#x1f337;&#x1f341; 博主猫头虎&#xff08;&#x1f405;&#x1f43e;&#xff09;带您 Go to New World✨&#x1f341; &#x1f984; 博客首页——&#x1f405;&#x1f43e;猫头虎的博客&#x1f390; &#x1f433; 《面试题大全专栏》 &#x1f995; 文章图文…

数据结构-leetcode(设计循环队列)

1.学习内容&#xff1a; 今天 我们讲解一道能够很好的总结所学队列知识的题目---设计循环队列 622. 设计循环队列 - 力扣&#xff08;LeetCode&#xff09; 2.题目描述&#xff1a; 让我们设计一个队列 要求是循环的 这和我们的双向链表有些类似 让我们按要求设计出这些相对…

戳穿人工智能的六个谎言:辨别真伪

目录 1. AI是智能的 2. 始终越大越好 3. AI毫无透明度和问责制可言 4. AI一贯正确 5. AI严重冲击就业市场 6. AI主宰人类 主要结论 相关拓展 人工智能&#xff08;AI&#xff09;无疑是我们这个时代的流行语。特别是随着ChatGPT等生成式AI应用程序的出现&#xff0c;A…

前端实现菜单快速检索的功能

前端CSS <style type"text/css">.btn-box {color: #fff;width: auto;border-radius: 25px;min-width: 40px;height: 40px;margin: 9px;line-height: 40px;display: inline-block;position: relative;overflow: hidden;background-image: linear-gradient(315de…

谈思生物医疗直播 | 利用类器官模型研究肺的发育与稳态

类器官是一种三维细胞培养物&#xff0c;其在细胞类型&#xff0c;空间结构及生理功能上能够模拟对应器官&#xff0c;从而提供一个高度生理相关的系统。自2009年小肠类器官首次建立至今&#xff0c;类器官研究已经延伸到多个组织系统&#xff0c;并成为当下生命科学领域最热门…

【PPspliT】ppt转pdf-保留过渡动画

网址 http://www.maxonthenet.altervista.org/ppsplit.php 下载安装 使用 再次打开ppt&#xff0c;就能在上方的选项栏里头看到了&#xff1a;

玩具礼品经营配送小程序商城作用是什么

玩具礼品所覆盖的需求人群年龄阶层非常广&#xff0c;尤其是孩子们乃至年轻人比较喜欢的&#xff0c;也因此无论线下还是线上都不缺各种店铺&#xff0c;传统商家主要以自然流量和线上开广告、一堆图文等方式分享获得生意。 然而如今随着互联网电商冲击&#xff0c;线下店铺流…

JMeter集结点的使用场景以及如何使用?

JMeter是一个开源的负载测试工具&#xff0c;它被广泛用于测试应用程序、Web服务和网络协议等的性能。在JMeter中&#xff0c;集结点&#xff08;JMeter Cluster&#xff09;是一种分布式测试环境&#xff0c;它允许多个JMeter实例同时工作来模拟高并发负载。 使用集结点的场景…

群晖NAS搭建WebDav服务做文件共享,可随时随地远程访问

文章目录 1. 在群晖套件中心安装WebDav Server套件1.1 安装完成后&#xff0c;启动webdav服务&#xff0c;并勾选HTTP复选框 2. 局域网测试WebDav服务2.1 下载RaiDrive客户端2.2 打开RaiDrive&#xff0c;设置界面语言可以选择中文2.3 点击添加按钮&#xff0c;新建虚拟驱动区2…

露营管理系统预约小程序效果如何

旅游经济已经复苏&#xff0c;并且市场规模增速加快&#xff0c;近一年来远途/周边游客户增多&#xff0c;不少旅游景区在节假日常常面对客流爆满现象。同时露营作为近几年突然火热的项目&#xff0c;其需求也是日渐上升。 然而在高需求的同时&#xff0c;我们也看到露营经营痛…

通过JDBC连接MySQL实现表的插入和查看语句

1.插入语句 因为插入,删除,更新数据操作差不多,我们这里仅仅介绍插入的方法,我们将不使用dbdriver的方式操作,因为这个操作使用的是反射,我们不推荐,下面我们开始正式介绍插入的操作 1.导入库 在官网上搜索jdbc连接的jar包,下载后粘贴到项目路径下,然后选中右击加入库即可 2.创…

碳化硅MOS/超结MOS在直流充电桩上的应用-REASUNOS瑞森半导体

一、前言 直流充电桩是新能源汽车直流充电桩的简称&#xff0c;一般也被叫做“快充”。直流充电桩一般与交流电网连接&#xff0c;可作为非车载电动汽车的动力补充&#xff0c;是一种直流工作电源的电源控制装置&#xff0c;可以提供充足的电量&#xff0c;输出电压和电流可以…