var formdata = new FormData(); formdata.append("name","xx"); formdata.append("flie",filename);
var formOjb = document.getElementById("form"); var formdata = new FormData(formOjb );
var formobj = document.getElementById("form"); var formdata = formobj.fetFormData();
Title
<span style="color: #0000ff;"><
<span style="color: #800000;">form <span style="color: #ff0000;">action<span style="color: #0000ff;">="{% url 'upload' %} "<span style="color: #ff0000;"> method<span style="color: #0000ff;">="post"<span style="color: #ff0000;"> enctype<span style="color: #0000ff;">="multipart/form-data"<span style="color: #0000ff;">><span style="color: #000000;">
{% csrf_token %}
<span style="color: #0000ff;"><<span style="color: #800000;">input <span style="color: #ff0000;">type<span style="color: #0000ff;">="file"<span style="color: #ff0000;"> name<span style="color: #0000ff;">="img"<span style="color: #0000ff;">>
<span style="color: #0000ff;"></<span style="color: #800000;">form<span style="color: #0000ff;">>
<span style="color: #0000ff;"><<span style="color: #800000;">span <span style="color: #ff0000;">style<span style="color: #0000ff;">="padding: 5px;color: royalblue"<span style="color: #ff0000;"> onclick<span style="color: #0000ff;">="Jqajax();"<span style="color: #0000ff;">>jq上传<span style="color: #0000ff;"></<span style="color: #800000;">span<span style="color: #0000ff;">>
<span style="color: #0000ff;"><<span style="color: #800000;">script <span style="color: #ff0000;">type<span style="color: #0000ff;">="text/javascript"<span style="color: #ff0000;"> src<span style="color: #0000ff;">="/static/jquery-2.1.1.min.js"<span style="color: #0000ff;">></<span style="color: #800000;">script<span style="color: #0000ff;">>
<span style="color: #0000ff;"><<span style="color: #800000;">script <span style="color: #ff0000;">type<span style="color: #0000ff;">="text/javascript"<span style="color: #ff0000;"> src<span style="color: #0000ff;">="/static/jquery.cookie.js"<span style="color: #0000ff;">></<span style="color: #800000;">script<span style="color: #0000ff;">>
<span style="color: #0000ff;"><<span style="color: #800000;">script<span style="color: #0000ff;">>
<span style="background-color: #f5f5f5; color: #0000ff;">function</span><span style="background-color: #f5f5f5; color: #000000;"> Jqajax() {
</span><span style="background-color: #f5f5f5; color: #0000ff;">var</span><span style="background-color: #f5f5f5; color: #000000;"> file_obj</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #000000;">$(</span><span style="background-color: #f5f5f5; color: #000000;">'</span><span style="background-color: #f5f5f5; color: #000000;">input[name="img"]</span><span style="background-color: #f5f5f5; color: #000000;">'</span><span style="background-color: #f5f5f5; color: #000000;">)[</span><span style="background-color: #f5f5f5; color: #000000;">0</span><span style="background-color: #f5f5f5; color: #000000;">].files[</span><span style="background-color: #f5f5f5; color: #000000;">0</span><span style="background-color: #f5f5f5; color: #000000;">];</span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;">获取dom形式的文件对象</span>
<span style="background-color: #f5f5f5; color: #0000ff;">var</span><span style="background-color: #f5f5f5; color: #000000;"> form_obj</span><span style="background-color: #f5f5f5; color: #000000;">=</span><span style="background-color: #f5f5f5; color: #0000ff;">new</span><span style="background-color: #f5f5f5; color: #000000;"> FormData(); </span><span style="background-color: #f5f5f5; color: #008000;">//</span><span style="background-color: #f5f5f5; color: #008000;">创建formdata对象</span>
<span style="background-color: #f5f5f5; color: #000000;"> form_obj.append(<span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">img<span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">,file_obj); <span style="background-color: #f5f5f5; color: #008000;">//<span style="background-color: #f5f5f5; color: #008000;">将文件对象加载formdata中
<span style="background-color: #f5f5f5; color: #000000;"> $.ajaxSetup({ <span style="background-color: #f5f5f5; color: #008000;">//<span style="background-color: #f5f5f5; color: #008000;">设置csrf_token
<span style="background-color: #f5f5f5; color: #000000;"> beforeSend: <span style="background-color: #f5f5f5; color: #0000ff;">function<span style="background-color: #f5f5f5; color: #000000;"> (xhr,settings) {
xhr.setRequestHeader(<span style="background-color: #f5f5f5; color: #000000;">"<span style="background-color: #f5f5f5; color: #000000;">X-CSRFToken<span style="background-color: #f5f5f5; color: #000000;">"<span style="background-color: #f5f5f5; color: #000000;">,$.cookie(<span style="background-color: #f5f5f5; color: #000000;">"<span style="background-color: #f5f5f5; color: #000000;">csrftoken<span style="background-color: #f5f5f5; color: #000000;">"<span style="background-color: #f5f5f5; color: #000000;">));
}
});
$.ajax({
type: <span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">POST<span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">,url: <span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">{% url <span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">upload<span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;"> %}<span style="background-color: #f5f5f5; color: #000000;">'<span style="background-color: #f5f5f5; color: #000000;">,data: form_obj,<span style="background-color: #f5f5f5; color: #008000;">//<span style="background-color: #f5f5f5; color: #008000;">指明发送的文件对象
<span style="background-color: #f5f5f5; color: #000000;"> processData: <span style="background-color: #f5f5f5; color: #0000ff;">false<span style="background-color: #f5f5f5; color: #000000;">,<span style="background-color: #f5f5f5; color: #008000;">//<span style="background-color: #f5f5f5; color: #008000;"> 告诉jquery要传输data对象
<span style="background-color: #f5f5f5; color: #000000;"> contentType: <span style="background-color: #f5f5f5; color: #0000ff;">false<span style="background-color: #f5f5f5; color: #000000;">,<span style="background-color: #f5f5f5; color: #008000;">//<span style="background-color: #f5f5f5; color: #008000;"> 告诉jquery不需要增加请求头对于contentType的设置
<span style="background-color: #f5f5f5; color: #000000;"> success: <span style="background-color: #f5f5f5; color: #0000ff;">function<span style="background-color: #f5f5f5; color: #000000;"> (data) {
console.log(data)
}
})
}
<span style="color: #0000ff;"></<span style="color: #800000;">script<span style="color: #0000ff;">>
<span style="color: #0000ff;"></<span style="color: #800000;">body<span style="color: #0000ff;">>
<span style="color: #0000ff;"></<span style="color: #800000;">html<span style="color: #0000ff;">>