示例1:

表单里有图片/文件的上传

<form enctype="multipart/form-data" method="post">

<input type="file" name="uploadfile"/>

</form>

multipart/form-data 是上传二进制数据

form里面的input的值以2进制的方式传过去,所以这里要明白,使用这种格式以后,后台request就获取不到数据了

enctype属性是设置提交数据的格式,指定将数据回发到服务器时浏览器使用的编码类型。

enctype值:

application/x-www-form-urlencoded:窗体数据被编码为名称/值对。这是标准(默认)的编码格式。

multipart/form-data:窗体数据被编码为一条消息,页上的每个控件对应消息中的一个部分。

text/plain:窗体数据以纯文本形式进行编码,其中不含任何控件或格式字符

示例2:jquery ajax无刷新上传图片

<form id='myupload' action='XXXXXXXXXXXX' method='post' enctype='multipart/form-data'>
<div class="demo">
<div class="btn">
<span>添加附件</span>
<input id="fileupload" type="file" name="file1">
</div>
<div class="progress">
<span class="bar"></span><span class="percent">0%</span>
</div>
<!-- 显示已上传的文件名 -->
<div class="files"></div>
<!-- 显示已上传的图片-->
<div class="showimg"></div>
</div>
<input type="submit" onclick="gosubmit2()"/>
</form>
<script type="text/javascript" src="jquery-form.js"></script>
<script type="text/javascript">
var bar = $('.bar');//进度条
var percent = $('.percent');//获取上传百分比
var showimg = $('.showimg');//显示图片的div
var progress = $('.progress');//显示进度的div
var files = $('.files');//文件上传控件的input元素
var btn = $('.btn span'); //按钮文本
function gosubmit2(){
$("#myupload").ajaxSubmit({
dataType :'json',//返回数据类型
beforeSend:function(){
showimg.empty();
progress.show();
var percentVal = '0%';
bar.width(percentVal);
percent.html(percentVal);
btn.html('上传中..');
},
//更新进度条事件处理代码
uploadProgress:function(event,position,total,percentComplete){
var percentVal = percentComplete + '%';
bar.width(percentVal);
percent.html(percentVal);
},
success:function(data){//图片上传成功时
//获取服务器端返回的文件数据
alert(data.name+","+data.pic+","+data.size);
},
error:function(xhr){
btn.html(上传失败);
bar.width('0');
files.html(xhr.responseText);
}
});
}
</script>

jquery-form.js csdn下载

form上传文件2种方式的更多相关文章

  1. Java文件上传的几种方式

    文件上传与文件上传一样重要.在Java中,要实现文件上传,可以有两种方式: 1.通过Servlet类上传 2.通过Struts框架实现上传 这两种方式的根本还是通过Servlet进行IO流的操作. 一 ...

  2. curl文件上传有两种方式,一种是post_fileds,一种是infile

    curl文件上传有两种方式,一种是POSTFIELDS,一种是INFILE,POSTFIELDS传递@实际地址,INFILE传递文件流句柄! );curl_setopt($ch, CURLOPT_PO ...

  3. c# 模拟表单提交,post form 上传文件、大数据内容

    表单提交协议规定:要先将 HTTP 要求的 Content-Type 设为 multipart/form-data,而且要设定一个 boundary 参数,这个参数是由应用程序自行产生,它会用来识别每 ...

  4. c# 模拟表单提交,post form 上传文件、数据内容

    转自:https://www.cnblogs.com/DoNetCShap/p/10696277.html 表单提交协议规定:要先将 HTTP 要求的 Content-Type 设为 multipar ...

  5. web 文件上传的几种方式

    问题 文件上传在WEB开发中应用很广泛. 文件上传是指将本地图片.视频.音频等文件上传到服务器上,可以供其他用户浏览或下载的过程. 以下总结了常见的文件(图片)上传的方式和要点处理. 表单上传 这是传 ...

  6. Python菜鸟之路:Django 文件上传的几种方式

    方式一:通过form表单中,html input 标签的“file”完成 # 前端代码uoload.html <form method="post" action=" ...

  7. Servlet中文件上传的几种方式

    上传文件,因为上传的都是二进制数据,所以在Servlet中就不能直接用request.getParameter();方法进行数据的获取,需要借助第三方jar包对上传的二进制文件进行解析.常用的方式如下 ...

  8. ajax以及文件上传的几种方式

    方式一:通过form表单中,html input 标签的“file”完成 # 前端代码uoload.html <form method="post" action=" ...

  9. iframe+form上传文件

    <iframe id="iframe1" name="ifra1" style="display: none"></ifr ...

随机推荐

  1. Java数组技巧攻略

      Java数组技巧攻略 0.  声明一个数组(Declare an array) String[] aArray = new String[5]; String[] bArray = {" ...

  2. android PreferenceFragment

    初始化: public SettingPreferenceFragment() { } public void setArguments(Bundle bundle){ String targetId ...

  3. Leetcode Trapping Rain Water

    Given n non-negative integers representing an elevation map where the width of each bar is 1, comput ...

  4. WPF整理--动态绑定到Logical Resource

    “What happens if we replace aspecific resource? Would that be reflected in all objects using the res ...

  5. css 设置圆角

    CSS3 圆角(border-radius) -moz(例如 -moz-border-radius)用于Firefox -webkit(例如:-webkit-border-radius)用于Safar ...

  6. 实战Java虚拟机之四:提升性能,禁用System.gc() ?

    今天开始实战Java虚拟机之四:"禁用System.gc()". 总计有5个系列 实战Java虚拟机之一“堆溢出处理” 实战Java虚拟机之二“虚拟机的工作模式” 实战Java虚拟 ...

  7. baiduMap

    1.把百度地图定位API(下载地址:http://lbsyun.baidu.com/sdk/download?selected=location),里面的lib福祉到自己的项目中 2,进行相关配置(官 ...

  8. Collection

    集合(collection): 使用存储实例的变长的容  容器名    存储的元素类型     长度   数组       基本和引用            定长   集合        引用     ...

  9. finnal 评论 II

    新蜂团队:俄罗斯方块界面设计给人眼前一亮的感觉,很喜欢他们界面的颜色搭配.功能上实现了俄罗斯方块的基本功能,并且没有bug.最重要的是游戏有自己的创新点在里面,很喜欢游戏的瞄准功能.总的来说项目完成的 ...

  10. Java关键字介绍

    关键字 描述 abstract 抽象方法,抽象类的修饰符 assert 断言条件是否满足 boolean 布尔数据类型 break 跳出循环或者label代码段 byte 8-bit 有符号数据类型 ...