• SweetAlert插件


    网址 www.jq22.com

    https://github.com/lipis/bootstrap-sweetalert

    https://www.bootcdn.cn/jquery/ js 网络路径

    路径引入问题

    css 注意顺序

    <link href="{% static 'bootstrap-3.3.7-dist/css/bootstrap.min.css' %}" rel="stylesheet">
    <link href="{% static 'sw/sweetalert.css' %}" rel="stylesheet">
    下边是在上边的前提下执行的
    

    js 注意顺序

     <script src="{% static 'js/jquery.js' %}"></script>
        <script src="{% static 'bootstrap-3.3.7-dist/js/bootstrap.min.js' %}"></script>
        <script src="{% static 'sw/sweetalert.min.js' %}"></script>
        <script src="{% static 'js/jquery.cookie.js' %}"></script>
    jquery.js --》 jquery.cookie.js
    jquery.js --》 bootstrap-3.3.7-dist  --》	sweetalert.min.js			
    

    home.html 文件

    {% load static %}
    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="utf-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1">
        <title>Bootstrap 101 Template</title>
        <link href="{% static 'bootstrap-3.3.7-dist/css/bootstrap.min.css' %}" rel="stylesheet">
        <link href="{% static 'sw/sweetalert.css' %}" rel="stylesheet">
    
    </head>
    <body>
    
         <h1>欢迎光临24期教室</h1>
    
        <button class="btn btn-danger">编辑</button>
    {#<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.js"></script> 网络路径#}
         <script src="{% static 'js/jquery.js' %}"></script>
         <script src="{% static 'bootstrap-3.3.7-dist/js/bootstrap.min.js' %}"></script>
         <script src="{% static 'sw/sweetalert.min.js' %}"></script>
         <script>
    
             $(".btn-danger").on("click", function () {
                 swal({
                         title: "你确定要删除吗?",
                         text: "删除可就找不回来了哦!",
                         type: "warning",
                         showCancelButton: true,
                         confirmButtonClass: "btn-danger",
                         confirmButtonText: "删除",
                         cancelButtonText: "取消",
                         closeOnConfirm: false
                     },
                     function () {
                         //{#var deleteId = $(this).parent().parent().attr("data_id");#}
                         var deleteId = 1;
    
                         $.ajax({
                             url: "/delete_book/",
                             {#发送请求路径#}
                             type: "post",
                             {#说明请求方式#}
                             data: {"book_id": deleteId,"csrfmiddlewaretoken":'{{ csrf_token }}'},
                             {#中间件,页面设置认证#}
                             success: function (data) {
                                 console.log(data);
                                 {#接收函数返回的返回值#}
                                 if (data.status === 1000) {
                                     swal("删除成功!", "你可以准备跑路了!", "success");
                                 } else {
                                     swal("删除失败", "你可以再尝试一下!", "error")
                                 }
                             }
                          })
                     });
             })
         </script>
    </body>
    </html>
    

    views.py文件

    from django.shortcuts import render,HttpResponse,redirect
    from django.http import JsonResponse
    # Create your views here.
    
    def home(request):
    
        return render(request,"home.html")
    
    def delete_book(request):
        if request.method == "POST":
            ret_data = {"status":None,"msg":None}
            book_id = request.POST.get("book_id")
            print(book_id)
            if book_id == "1":
                ret_data["status"] = 1000
            else:
                ret_data["status"] = 1001
    
            return JsonResponse(ret_data)
        #返回json数据类型
    

    urls.py文件

    from django.conf.urls import url
    from django.contrib import admin
    from app01 import views
    urlpatterns = [
        url(r'^admin/', admin.site.urls),
        url(r'^home/', views.home,name="home"),
        url(r'^delete_book/', views.delete_book,name="delete_book"),
    ]
    

    settings设置静态文件

    STATIC_URL = '/static/'
    STATICFILES_DIRS = [
        os.path.join(BASE_DIR,"jingtaiwenjian")
    ]
    

    执行流程

    先http://127.0.0.1/home/请求页----返回home.html文件内容 ---点击button按钮----触发点击事件----执行$(".btn-danger")内容 --- 触发ajax事件 ----- url发送请求路径给浏览器 ---浏览器请求函数---- 函数执行并返回给ajax一个字典 ----根据字典取值判断,执行效果

  • 相关阅读:
    LocalDate/LocalDateTime与String的互相转换示例(附DateTimeFormatter详解)
    MyBatis中的JdbcType映射介绍
    mybatis的一些特殊符号标识(大于,小于,等于,不等于)
    c++多重继承
    tensorflow 一些好的blog链接和tensorflow gpu版本安装
    java中Arraylist复制方法
    java/python中的队列
    java中的函数参数
    linux命令
    python爬某个网站的图片
  • 原文地址:https://www.cnblogs.com/lvweihe/p/11662743.html
Copyright © 2020-2023  润新知