zoukankan      html  css  js  c++  java
  • Ajax上传文件

    在前端页面中写入

    <form> #用不用form没关系,这里就是个盒子的作用,一般写form标签是为了提示别人,这个地方的内容是要提交的
          {% csrf_token %}
          用户名 <input type="text" id="user">
          头像 <input type="file" id="avatar">
         <input type="button" id="ajax-submit" value="ajax-submit">
    </form>
    
    <script>
    
        $("#ajax-submit").click(function(){
            var formdata=new FormData(); #ajax上传文件的时候,需要这个类型,它会将添加给它的键值对加工成formdata的类型
            formdata.append("user",$("#user").val());  #添加键值的方法是append,注意写法,键和值之间是逗号
         formData.append("csrfmiddlewaretoken", $("[name='csrfmiddlewaretoken']").val()); #别忘了csrf_token
            formdata.append("avatar_img",$("#avatar")[0].files[0]);
            $.ajax({
    
                url:"",
                type:"post",
                data:formdata, #将添加好数据的formdata放到data这里
                processData: false ,    // 不处理数据
                contentType: false,    // 不设置内容类型
    
                success:function(data){
                    console.log(data)
                }
            })
    
        })
    
    </script>

    在视图中写入

    def index(request):
    
        if request.is_ajax():
    
            print(request.body)   # 原始的请求体数据
            print(request.GET)    # GET请求数据
            print(request.POST)   # POST请求数据
            print(request.FILES)  # 上传的文件数据
    
            return HttpResponse("ok")
    
    
        return render(request,"index.html")
  • 相关阅读:
    低耦合高内聚
    Python 爬虫库
    Python 爬虫的工具列表
    selenium对浏览器操作、鼠标操作等总结
    简单文件操作
    环境错误2
    环境错误
    pip list 警告消除方法
    python 安装scrapy错误
    按是否执行程序的角度划分:静态测试、动态测试
  • 原文地址:https://www.cnblogs.com/wang-xing-hao/p/11924127.html
Copyright © 2011-2022 走看看