前端 - jquery方式 / iframe +form 方式 上传文件
环境与上一章一样
jquery 方式上传文件:
HTML代码
{#html代码开始#}
<input type="file" id="img" >
<button onclick="a1()">提交</button>
{#html代码结束#}
jquery代码
<script src="/static/js/jquery-1.12.4.min.js"></script>
<script>
function ax() {
{#获取input file内的文件内容#}
var img_data = document.getElementById('img').files[0]; {#创建一个FormData对象,将数据append方式加入FormData对象中#}
var dataX = new FormData();
dataX.append('k1','11');
dataX.append('k2','22');
dataX.append('k3',img_data); {#ajax定义#}
$.ajax(
{
url:'/aj1.html',
type:'POST',
data:dataX,
success:function (arg) {
console.log(arg)
},
{#必加参数!!!!#}
processData:false,
contentType:false
}
)
}
</script>
iframe +form 方式上传文件:
HTML代码
{# html代码开始#}
<iframe id="ifr_id" name='ifr_na' style="display: none"></iframe>
<form id='form_id' target="ifr_na" method="POST" action="/aj1.html" enctype="multipart/form-data">
<input type="file" name="k3">
<button id="bt">提交</button>
</form>
{# html代码结束#}
js代码
<script>
document.getElementById('bt').onclick=function () {
document.getElementById('ifr_id').onload = a3;
document.getElementById('form_id').submit();
};
function a3() {
console.log(this.contentWindow.document.body.innerText);
};
</script>
利用onchange事件 直接上传
{# html代码开始#}
<iframe id="ifr_id" name='ifr_na' style="display: none"></iframe>
<form id='form_id' target="ifr_na" method="POST" action="/aj1.html" enctype="multipart/form-data">
<input type="file" name="k3">
</form>
{# html代码结束#}
<script>
document.getElementById('form_id').onchange=function () {
document.getElementById('ifr_id').onload = a3;
document.getElementById('form_id').submit();
};
function a3() {
console.log(this.contentWindow.document.body.innerText);
};
</script>
前端 - jquery方式 / iframe +form 方式 上传文件的更多相关文章
- 文件上传---form表单,ajax,jquery,以及iframe无刷新上传 (processData,contentType讲解)
服务端程序: import tornado.web import os IMG_LIST=[] class IndexHandler(tornado.web.RequestHandler): def ...
- form、iframe实现异步上传文件
转载自:http://blog.csdn.net/sunjing21/article/details/4779321 实现主要功能: 页面提供一个上传图片的input file选择框,用于上传某一类型 ...
- C# 通过WebService方式 IIS发布网站 上传文件到服务器
应用场景:要将本地的文件 上传到服务器的虚拟机上 网络环境:公司局域网(如下图中第二种) 开发环境:VS2010 服务器环境:WinServer2008 虚拟机环境:WinServer2008 ...
- C# 通过WebService方式 IIS发布网站 上传文件到服务器[转]
http://blog.sina.com.cn/s/blog_517cae3c0102v0y7.html 应用场景:要将本地的文件 上传到服务器的虚拟机上 网络环境:公司局域网(如下图中第二种) 开发 ...
- 通过jQuery Ajax使用FormData对象上传文件
FormData对象,是可以使用一系列的键值对来模拟一个完整的表单,然后使用XMLHttpRequest发送这个"表单". 在 Mozilla Developer 网站 使用For ...
- django Form组件 上传文件
上传文件 注意:FORM表单提交文件要有一个参数enctype="multipart/form-data" 普通上传: urls: url(r'^f1/',views.f1), u ...
- 通过jQuery Ajax使用FormData对象上传文件 (转载)
XMLHttpRequest Level 2 添加了一个新的接口——FormData.与普通的 Ajax 相比,使用 FormData 的最大优点就是我们可以异步上传二进制文件.jQuery 2.0+ ...
- [转] 通过jQuery Ajax使用FormData对象上传文件
FormData对象,是可以使用一系列的键值对来模拟一个完整的表单,然后使用XMLHttpRequest发送这个"表单". 在 Mozilla Developer 网站 使用For ...
- iframe仿Ajax上传文件
利用iframe框架完成文件上传 前端页面 <!doctype html> <html lang="en"> <head> <meta c ...
随机推荐
- 改xml
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android=" ...
- Altium Designer 17 ------ 多层板设计
Pullback:在内电层边缘设置一个去铜边界,以保证内电层边界距离PCB边缘有一个安全间距.
- RS485 / RS422
RS422可以变为RS485:A和Y短路(然后接T/R+),B和Z短路(然后接T/R-) RS485是半双工,只有两根线通信线,要么接收状态,要么发送状态 RE为低电平,作为接收器 DE为高电平,作为 ...
- C++ vector的运用
C++ vector 用法(#include <vector>) 标准库Vector类型 使用需要的头文件: #include <vector> Vector:Vector 是 ...
- Centos 6.8编译安装LNMP环境
Centos 6.8编译安装LNMP环境 参考资料: http://www.jb51.net/article/107429.htm https://phperzh.com/articles/1360 ...
- 增删改查的SSM小项目
经过将近一个月的摸索,终于算是勉强完成了关于增删改查的SSM项目. github源码地址:https://github.com/123456abcdefg/Login 好了,话不多说,写一下具体代 ...
- Centos7安装Openldap初级篇
openldap 单节点编译安装 1.获取源码包 #下载Berkeley DB www.oracle.com/technetwork/database/database-technologies/be ...
- python 计算机发展史,线程Process使用 for循环创建 2种传参方式 jion方法 __main__的解释
########################总结################## #一 操作系统的作用: 1:隐藏丑陋复杂的硬件接口,提供良好的抽象接口 2:管理.调度进程,并且将多个进程对硬 ...
- golang byte与rune区别
先看代码 package main import ( "fmt" ) func main() { var a = "hello world" var b = & ...
- HDU - 3974 Assign the task (线段树区间修改+构建模型)
https://cn.vjudge.net/problem/HDU-3974 题意 有一棵树,给一个结点分配任务时,其子树的所有结点都能接受到此任务.有两个操作,C x表示查询x结点此时任务编号,T ...