环境与上一章一样

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 方式 上传文件的更多相关文章

  1. 文件上传---form表单,ajax,jquery,以及iframe无刷新上传 (processData,contentType讲解)

    服务端程序: import tornado.web import os IMG_LIST=[] class IndexHandler(tornado.web.RequestHandler): def ...

  2. form、iframe实现异步上传文件

    转载自:http://blog.csdn.net/sunjing21/article/details/4779321 实现主要功能: 页面提供一个上传图片的input file选择框,用于上传某一类型 ...

  3. C# 通过WebService方式 IIS发布网站 上传文件到服务器

    应用场景:要将本地的文件 上传到服务器的虚拟机上 网络环境:公司局域网(如下图中第二种) 开发环境:VS2010 服务器环境:WinServer2008    虚拟机环境:WinServer2008 ...

  4. C# 通过WebService方式 IIS发布网站 上传文件到服务器[转]

    http://blog.sina.com.cn/s/blog_517cae3c0102v0y7.html 应用场景:要将本地的文件 上传到服务器的虚拟机上 网络环境:公司局域网(如下图中第二种) 开发 ...

  5. 通过jQuery Ajax使用FormData对象上传文件

    FormData对象,是可以使用一系列的键值对来模拟一个完整的表单,然后使用XMLHttpRequest发送这个"表单". 在 Mozilla Developer 网站 使用For ...

  6. django Form组件 上传文件

    上传文件 注意:FORM表单提交文件要有一个参数enctype="multipart/form-data" 普通上传: urls: url(r'^f1/',views.f1), u ...

  7. 通过jQuery Ajax使用FormData对象上传文件 (转载)

    XMLHttpRequest Level 2 添加了一个新的接口——FormData.与普通的 Ajax 相比,使用 FormData 的最大优点就是我们可以异步上传二进制文件.jQuery 2.0+ ...

  8. [转] 通过jQuery Ajax使用FormData对象上传文件

    FormData对象,是可以使用一系列的键值对来模拟一个完整的表单,然后使用XMLHttpRequest发送这个"表单". 在 Mozilla Developer 网站 使用For ...

  9. iframe仿Ajax上传文件

    利用iframe框架完成文件上传 前端页面 <!doctype html> <html lang="en"> <head> <meta c ...

随机推荐

  1. ThymeLeaf的eclipse插件安装

    “Help”----“Install New Software...” 输入: http://www.thymeleaf.org/eclipse-plugin-update-site/ 一路Next, ...

  2. please select android sdk

  3. 剑指Offer_编程题_13

    题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变. class So ...

  4. 剑指Offer_编程题_9

    题目描述 一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级.求该青蛙跳上一个n级的台阶总共有多少种跳法. class Solution { public: int jumpFloorI ...

  5. java用流的方式加载图片

    前端: <img ng-show="photo" class="vertical_b" id="photoImg" src=" ...

  6. Hadoop记录-hadoop集群常见问题汇总

    [问题1]HBase Shell:ERROR: org.apache.hadoop.hbase.IPc.ServerNotRunningYetException: Server is not runn ...

  7. JAVA-String,StringBuilder,StringBuffer例子(基础必备)

    package com.net.xinfang.reflect; import java.io.UnsupportedEncodingException; /** * String不属于8种基本数据类 ...

  8. vs code配置git

    在项目目录执行 git init 修改.git文件夹下的config文件 [core] repositoryformatversion = 0 filemode = false bare = fals ...

  9. elasticsearch基本概念与查询语法

    序言 后面有大量类似于mysql的sum, group by查询 elk === elk总体架构 https://www.elastic.co/cn/products Beat 基于go语言写的轻量型 ...

  10. [Android] Sqlite 数据库操作 工具封装类

    sqlite 数据库封装类 DatabaseUtil.java(封装的类) package com.jack.androidbase.tools; import android.content.Con ...