首页 > 其他 > 详细

IE和FireFox 对FORM enctype属性的认识存在差异

时间:2019-01-03 16:09:49      阅读:196      评论:0      收藏:0      [点我收藏+]

IE和FireFox 对FORM enctype属性的认识存在差异,一般来说对于动态创建的form,如果因为要上传文件的原因很自然的会使用类似如下的代码:

 1  //create form

2  this.form = document.createElement("FORM");
3  this.form.id = "jasonUploadForm";
4  this.form.name = "jasonUploadForm";
5  this.form.method = "post";
6  this.form.action = actionTarget;
7  this.form.enctype = "multipart/form-data";
8  document.body.appendChild(this.form);

 

这段代码表面上看没有什么问题,但在IE中却还是无法改变FORM的编码格式,

也就是说传到服务端的ContentType仍然是:"application/x-www-form-urlencoded”.

但在FireFox中却能正确识别,也就能正常上传文件。

那如何才能使IE和FireFox都能正确按照我们的要求编码FORM 数据呢?找了N久终于找到了解决方案,就是直接指定encoding就行了,且看如下正确的代码:

 

1  //create form
 2  this.form = document.createElement("FORM");
 3  this.form.id = "jasonUploadForm";
 4  this.form.name = "jasonUploadForm";
 5  this.form.method = "post";
 6  this.form.action = actionTarget;     
 7     
 8  //this.form.setAttribute("enctype", "multipart/form-data");
 9  this.form.encoding = "multipart/form-data";
10         
11  document.body.appendChild(this.form);

 

【我也是遇到了上传文件,chrome浏览器可以,但是IE浏览器一直上传失败;就是因为enctype的设置不对;】

IE和FireFox 对FORM enctype属性的认识存在差异

原文:https://www.cnblogs.com/liuzhongqing/p/10214639.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!