sweet+alert+ajax,Ajax相关
Ajax
Ajax的特性可以实现异步提交与局部刷新。
Ajax是一门js的技术 基于原生js开发的,但是用原生的js写代码过于繁琐, 我们在学的时候 只学如何用jQuery实现ajax。
AJAX 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容。(这一特点给用户的感受是在不知不觉中完成请求和响应过程)
异步提交
同步异步:描述的任务的提交方式
同步:提交任务之后 原地等待任务的返回结果 期间不干任何事儿
异步:提交任务之后 不愿地等待 直接执行下一行代码 任务的返回通过回调机制
局部刷新
一个页面 不是整体刷新 而是页面的某个地方局部刷新
实例
1.展示一个前端页面 页面上有三个输入框 前两个框输入数字 点击按钮朝后端发请求
页面不刷新的情况下 完成数字的加法运算
方法1:不用JSON
前端:
+
=
$('#b1').on('click', function () {
$.ajax({
// 1.朝后端发送数据的地址,空即为当前地址
url: '', //提交的目标地址
//2. 发送的请求方式
type: 'post',
//3 发送的数据
data: {'t1': $('#t1').val(), 't2': $('#t2').val()},
success: function (data) {
//由于ajax是异步提交,所以需要一个回调函数,在提交的结果返回到时执行
//这里的data是views那边返回的结果
$('#t3').val(data)
}
})
})
后端:
class Ajax(View):
def post(self, request):
if request.is_ajax():
t1 = request.POST.get('t1')
t2 = request.POST.get('t2')
res = int(t1) + int(t2)
return HttpResponse(res)
def get(self, request):
return render(request, 'ajax.html')
方法二:JSON交互数据
前端:
+
=
$('#b1').on('click', function () {
$.ajax({
// 1.朝后端发送数据的地址,空即为当前地址
url: '', //提交的目标地址
//2. 发送的请求方式
type: 'post',
//发送数据的格式
contentType:'application/json',
//3 发送的数据
data: JSON.stringify({'t1': $('#t1').val(), 't2': $('#t2').val()}),
success: function (data) { //这里的data是views那边返回的结果
$('#t3').val(data)
}
})
})
后端:
class Ajax(View):
def post(self, request):
if request.is_ajax():
json_bytes=request.body
json_str=json_bytes.decode('utf8')
json_dic=json.loads(json_str)
print(json_dic,type(json_dic))
res=int(json_dic.get('t1'))+int(json_dic.get('t2'))
return JsonResponse(res,safe=False)
注:
form表单的默认的提交数据的编码格式是urlencoded(username=admin&password=123)
django后端针对username=admin&password=123的urlencoded数据格式会自动解析,然后将结果打包给request.POST 用户只需要从request.POST即可获取对应信息。
传输文件时django后端针对formdata格式类型数据 也会自动解析,但是不会方法request.POST中而是给你放到了request.FILES中。
总结:django后端针对不同的编码格式数据 会有不同的处理机制以及不同的获取该数据的方法
序列化组件
1.将用户表的数据 查询出来 返回给前端
给前端的是一个大字典 字典里面的数据的一个个的字段
from django.core import serializers
def ser(request):
user_queryset = models.Userinfo.objects.all()
# [{},{},{},{}]
# user_list = []
# for user_obj in user_queryset:
# user_list.append({
# 'username':user_obj.username,
# 'password':user_obj.password,
# 'gender':user_obj.get_gender_display(),
# })
res = serializers.serialize('json',user_queryset)
print(res)
return render(request,'ser.html',locals())
sweetalert+ajax
ajax + sweetalert
$("#b55").click(function () {
swal({
title: "你确定要删除吗?",
text: "删除可就找不回来了哦!",
type: "warning",
showCancelButton: true, // 是否显示取消按钮
confirmButtonClass: "btn-danger", // 确认按钮的样式类
confirmButtonText: "删除", // 确认按钮文本
cancelButtonText: "取消", // 取消按钮文本
closeOnConfirm: false, // 点击确认按钮不关闭弹框
showLoaderOnConfirm: true // 显示正在删除的动画效果
},
function () {
var deleteId = 2;
$.ajax({
url: "/delete_book/",
type: "post",
data: {"id": deleteId},
success: function (data) {
if (data.code === 0) {
swal("删除成功!", "你可以准备跑路了!", "success");
} else {
swal("删除失败", "你可以再尝试一下!", "error")
}
}
})
});
})
sweet+alert+ajax,Ajax相关相关推荐
- 《ASP.NET AJAX程序设计——第II卷:客户端Microsoft AJAX Library相关》前言
章节列表:http://www.cnblogs.com/dflying/archive/2007/05/18/751741.html 在最近的一年以及今后的三五年内,我们有理由相信Web应用程序将受到 ...
- 给动态生成的按钮添加ajax,Ajax/Javascript动态创建按钮的问题
你没有指定一个事件处理程序,您调用它.函数createButtons马上被调用,并且它返回的任何东西都被赋值给window.onload. window.onload = createButtons( ...
- jQuery ajax - ajax()
jQuery ajax - ajax() 方法 jQuery Ajax 参考手册 实例 通过 AJAX 加载一段文本: jQuery 代码: $(document).ready(function(){ ...
- ajax实现表单验证 html,Ajax+ajax做的表单验证
//Ajx实现异步示例,blur实现失去焦点触发 jQuery('#formname').blur(check); function check(){ alert("开始执行Ajax&quo ...
- Ajax 什么是Ajax? Ajax的基本语法
Ajax 什么是Ajax? AJAX(Asynchronous Javascript And XML)翻译成中文就是"异步Javascript和XML".即使用Javascript ...
- AJAX工作原理及其优缺点 1.什么是AJAX? AJAX全称为“Asynchronous JavaScript and XML”(异步JavaScript和XML),是一种创建交互式网页应用的网页
参考文章:https://www.cnblogs.com/SanMaoSpace/archive/2013/06/15/3137180.html AJAX工作原理及其优缺点 1.什么是AJAX? AJ ...
- 什么是Ajax?Ajax如何发送请求(详)
本篇来讲关于Ajax的内容,当然还有小伙伴可能不知道该怎么读 "Ajax",它读 "阿贾克斯" ,当然了读法可能因人而异,下面来进入正题,先来了解一下什么是Aj ...
- swal如何加入html语言,Sweet Alert弹窗点击确定后执行页面跳转等操作
可不可以点击 Sweet Alert 弹窗的确定按钮后跳转页面呢?答案是可以的: 首先参考上文,引入 Sweet Alert 所需的文件,我这里写了一个修改密码的确认框. 点及修改后,会弹出修改成功提 ...
- html同时执行多个ajax,Ajax方法详解以及多个Ajax并发执行
AJAX = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML).javascript 先来一段代码html $.ajax({ type: &q ...
最新文章
- 【组队学习】【31期】动手学数据分析
- 赠书 | 读懂生成对抗神经网络 GAN,看这文就够了
- ACL 2019 | 基于知识增强的语言表示模型,多项NLP任务表现超越BERT(附论文解读)...
- 创建与SharePoint 2010风格一致的下拉菜单 (续) 整合Feature Custom Action框架
- 解决ubuntu Gvim 菜单乱码
- 开发函数计算的正确姿势——运行 Selenium Java
- 关于Mybatis的各种配置文件
- 前端页面高度和宽度自适应怎么做?
- uniapp实战项目仿糗事百科_项目设计最好用的底层思考模型——黄金圈
- 【工业控制】PolyWorks培训教程-设备转站
- 进程P1、P2、P3、P4和P5的前趋图如下图所示。若用PV操作控制进程P1~P5并发执行的过程,则需要设置6个信号S1、S2、S3、S4,且信号量S1~S4的初值都等于0。下图中a和b处应分别填写(
- PHP代码20个实用技巧(转)
- matlab fftshift_数字信号处理没有Matlab?用Python一样很爽
- 面试问题:SpringMVC的执行流程
- 02 HelloWorld案例
- 如何固定电脑ip地址
- Python统计Java代码行数
- Android 系统架构图
- 1_Hadoop安装部署及常用配置(HDFS+YARN)
- Selenium+Java自动化测试系列教程❤
热门文章
- linux 内核空间与用户空间 简介
- 查看 centos 版本
- docker 占用磁盘空间清理 无用数据卷删除
- Linux进程在后台运行的几种方法
- java设计模式---三种工厂模式
- (三)Amazon Lightsail 部署LAMP应用程序之连接到Lightsail数据库
- go语言学习(一)——go语言简介和环境搭建
- android 反调试 方案,Android Native反调试—检测TracerPid值
- 河南计算机程序大赛,我院成功举办河南省第十一届ACM大学生程序设计竞赛
- android 使用perl语言,在Android上用python(Perl、Lua、BeanShell等)编程