动态设置上传文件的enctype

动态设置上传文件的enctype

<fm id="up" name="up" action="upfileile.php" method="post" enctype="multipart/fm-data">
<input type="file" name="upfileilefile[]" />
<input type="file" name="upfileilefile[]" />
<button type="submit" >upfileile</button>
</fm>
学过js的人可能试图用js检查并控制enctype得类型

fm=document.getElementById('up');
if(fm.getAttribute('enctype')!='multipart/fm-data'){
    fm.setAttribute('enctype','multipart/fm-data');
}以上代码完全按照W3C格式
FF下运行良好 但是IE不兼容,其它浏览器可以不兼容,就IE不能不兼容
在看YUI类库时得到启发
IE中fm没有enctype属性,只有encoding属性,那么以上代码改写为:

fm=document.getElementById('up');
if(fm.getAttribute('enctype')!='multipart/fm-data'&&fm.encoding!='multipart/fm-data')
  if(fm.encoding){
      fm.setAttribute('encoding','multipart/fm-data');
  }else{
      fm.setAttribute('enctype','multipart/fm-data');
  }
}
//最外成if判断可以去掉 因为你是要设置它可以上传文件这样你可以试试这样得代码了
<script type="text/javascript">
function upfileile(fm){
  if(fm.encoding){
      fm.setAttribute('encoding','multipart/fm-data');
  }else{
      fm.setAttribute('enctype','multipart/fm-data');
  }
  fm.setAttribute('method',post');
  if(!fm.getAttribue('action')){
      fm.setAttribute('action',location.href);
  }
  fm.submit();
}
</script>
<fm action="upfileile.php" onsubmit="try{upfileile(this);}catch(e){};return false;">
<input type="file" name="upfileilefile[]" />
<input type="file" name="upfileilefile[]" />
<button type="submit" >upfileile</button>
</fm>

时间: 2024-09-22 10:59:05

动态设置上传文件的enctype的相关文章

动态设置上传文件enctype类型

动态设置上传文件enctype类型以下是最常见上传文件片段  <form id="upform" name="upform" action="upload.php" method="post" enctype="multipart/form-data"> <input type="file" name="uploadfile[]" /> <

wordpress中怎么设置上传文件路径

该函数指定了uploads的目录为uploads的avatar文件夹:  代码如下 复制代码 function my_upload_dir($upload) { $upload['subdir']= '/avatar'; $upload['path']= $upload['basedir'] . $upload['subdir']; $upload['url']= $upload['baseurl'] . $upload['subdir']; return $upload; } 然后在需要改变上

ASP.NET技巧:设置上传文件的最大大小

asp.net|技巧|上传 在web.config中添加httpRuntime元素,如下:<configuration>   <system.web>      <httpRuntime maxRequestLength="8192"         useFullyQualifiedRedirectUrl="true"         executionTimeout="45"         versionHea

Android上传文件至服务器

本实例实现每隔5秒上传一次,通过服务器端获取手机上传过来的文件信息并做相应处理:采用Android+Struts2技术.            一.Android端实现文件上传 1).新建一个Android项目命名为androidUpload,目录结构如下:           2).新建FormFile类,用来封装文件信息 package com.ljq.utils; import java.io.File; import java.io.FileInputStream; import jav

Android实现上传文件到服务器实例详解_Android

本实例实现每隔5秒上传一次,通过服务器端获取手机上传过来的文件信息并做相应处理:采用Android+Struts2技术. 一.Android端实现文件上传 1).新建一个Android项目命名为androidUpload,目录结构如下: 2).新建FormFile类,用来封装文件信息 package com.ljq.utils; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundExce

java中使用Struts 2框架上传文件代码

HTML表单默认值:  代码如下 复制代码 <form action="" enctype="application/x-www-form-urlencoded" method="get"> ...</form> 要使用HTML表单上传文件,需要将HTML表单的enctype属性设置为"multipart/form-data",还需要将表单的method属性设置为"post"  代码

iframe 无刷新上传文件不好用

问题描述 两个jsp:1.NewList.jsp.2.MyJsp.jsp-----------------NewList.jsp---------------原代码<%@pagelanguage="java"import="java.util.*"pageEncoding="utf-8"%><%Stringpath=request.getContextPath();StringbasePath=request.getScheme

windows下使用IIS配置的PHP无法上传文件的解决方法_win服务器

延续<Windows Server 2003中iis配置php>一文 服务器上使用Apache2+PHP正常运行,换成IIS+PHP,先后出现了php.ini的环境变量无法读取,php中验证码无法显示的问题,如今又有人反应无法上传图片的问题. 从IIS替换Apache2的过程仅仅是开启IIS,关闭Apache2,其它的没什么变化,但是却发生了如此多的差异,看样子IIS支持PHP还是有很多要进行修改的. 分析: 根据上面的描述,我怀疑问题出在IIS的权限配置上,IUSR_MACHINE的帐户对u

iis配置php无法上传文件解决办法

根据上面的描述,我怀疑问题出在IIS的权限配置上,IUSR_MACHINE的帐户对upload没有写入的权限,于是进行权限修改,IIS下的权限,NTFS下的权限都进行修改,但是终究都没用,查找网络上的资料也没有相应的,对上传页面进行测试,流程为:    swf文件调用save.php上传文件---->swf文件对上传的文件进行重命名--->名字返回给save.php--->显示出最后的名字.    现在的问题一直停留在swf对文件重命名的这里,一直没有到显示出最后的名字,并且swf文件不