参考价值最大

https://blog.csdn.net/huangql517/article/details/81259671

https://www.cnblogs.com/chenjianhong/p/4144333.html

https://blog.csdn.net/anphper/article/details/78140294

https://www.bbsmax.com/A/l1dyQexdem/

1、前端代码

{% extends 'base.html' %}
{% load staticfiles %}
{% block title %}upload-file{% endblock %}
{% block content %} {# 测试上传#}
<form>
{% csrf_token %}
<div class="updateImg">
<input name="photo" type="file" id="exampleInputFile">
<button id="photo" class="btn btn-danger" type="submit" onclick="ajaxFileUpload()">上传头像</button>
</div>
</form> <script type="text/javascript" src='{% static "js/jquery.js"%}'></script> <!-- 执行上传文件操作的函数 -->
<script type="text/javascript">
function ajaxFileUpload(){
var formData = new FormData();
var fileobj=$('#avatar')[0].files[0]; //注意这里的取值方式,获取文件对象
formData.append('avatarrrrr', fileobj);
formData.append('title', $("#id_title").val());
formData.append('column_id', $("#which_column").val());
formData.append('body', $("#id_body").val());
$.ajax({
url:"{% url 'article:article_post' %}",
type: 'POST', //一定要大写POST,坑我好久
mimeType: "multipart/form-data",
// 告诉jQuery不要去处理发送的数据, 发送对象。
processData : false,
// 告诉jQuery不要去设置Content-Type请求头
contentType : false,
data: formData,
success: function (data) {
console.log(data);
}
} ); }
</script>
{% endblock %}

获取上传文件的取值方式:$('#exampleInputFile')[0].files[0]

可以在console中测试一下

ajax方式上传图片到Django后台的更多相关文章

  1. OSS web直传 ajax方式 上传图片、文件

    部分js代码 send_request = function(){//这是从后台获取认证策略等信息. var htmlobj=$.ajax({url:root+"/service/polic ...

  2. django 的 ajax 方式上传图片

    页面代码: <html>     <!-- 引入相关的js文件,相对路径  -->     <script type="text/javascript" ...

  3. ajax实现上传图片保存到后台并读取

    上传图片有两种方式: 1.fileReader  可以把图片解析成base64码的格式,简单粗暴 2.canvas  可以重新绘制一张图片,可以先把获取得到的图片的blob放进canvas里面,再生成 ...

  4. ajax方式提交文件到后台同时加其他参数

    struts2后台Action方法,直接用参数成员变量对象的属性接收即可

  5. node学习笔记(二)(ajax方式向node后台提交数据)

    通过ajax向node后台提交数据过程(附手写前后台代码),并总结post与get的区别 POST 前台代码 //CSS简单给点样式 <style> form{ width: 200px; ...

  6. python笔记-20 django进阶 (model与form、modelform对比,三种ajax方式的对比,随机验证码,kindeditor)

    一.model深入 1.model的功能 1.1 创建数据库表 1.2 操作数据库表 1.3 数据库的增删改查操作 2.创建数据库表的单表操作 2.1 定义表对象 class xxx(models.M ...

  7. 关于后台数据库正常存储中文通过Ajax方式传递到前台变成问号的处理

    我的一个程序,用到的后台数据库MySql,字段是Varchar,Character Set是utf8,字段能且已经正确存储了中文. 从数据库取出信息后,在后台Java代码里Debug看到正确的中文. ...

  8. MVC 使用AJAX POST上传图片的方式

    我们来总结一下使用AJAX以POST方式上传图片的方法. 一.普遍的一种是以file的格式请求.在Request.Files中获取文件. public ActionResult UploadFile( ...

  9. django 使用Ajax方式POST JSON数据包

    示例1: js: function SaveAction(){ //点击 保存按键 var senddata = {"type":"A", "host ...

随机推荐

  1. java &&与||短路的详解

    短路运算符就是我们常用的“&&”.“||”,一般称为“条件操作”. class Logic{    public ststic void main(String[] args){    ...

  2. Oracle to_date()函数的用法《转载》

    to_date()是Oracle数据库函数的代表函数之一,下文对Oracle to_date()函数的几种用法作了详细的介绍说明, 原文地址:http://database.51cto.com/art ...

  3. Python3 List list()方法

    Python3 List list()方法  Python3 列表 描述 list() 方法用于将元组或字符串转换为列表. 注:元组与列表是非常类似的,区别在于元组的元素值不能修改,元组是放在括号中, ...

  4. 53. Maximum Subarray (Array; DP)

    Find the contiguous subarray within an array (containing at least one number) which has the largest ...

  5. 可重入函数reentrant function

    可重入函数主要用于多任务环境中,一个可重入的函数简单来说就是可以被中断的函数:而不可重入的函数由于使用了一些系统资源,比如全局变量区,中断向量表等,所以它如果被中断的话,可能会出现问题,这类函数是不能 ...

  6. How Many Answers Are Wrong(带权并查集)

    How Many Answers Are Wrong http://acm.hdu.edu.cn/showproblem.php?pid=3038 Time Limit: 2000/1000 MS ( ...

  7. Pocket Cube

    Pocket Cube http://acm.hdu.edu.cn/showproblem.php?pid=5983 Time Limit: 2000/1000 MS (Java/Others)    ...

  8. JdbcTemplate实现CRUD操作

    ------------------siwuxie095                                     JdbcTemplate 实现 CRUD 操作         1.J ...

  9. [leetcode]496. Next Greater Element I下一个较大元素

    You are given two arrays (without duplicates) nums1 and nums2 where nums1’s elements are subset of n ...

  10. volatile是否就是原子性/线程同步的

    在java线程并发处理中,有一个关键字volatile的使用目前存在很大的混淆,以为使用这个关键字,在进行多线程并发处理的时候就可以万事大吉. Java语言是支持多线程的,为了解决线程并发的问题,在语 ...