首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >HTML5 <input type=“文件”multiple="multiple“/>的输入处理

HTML5 <input type=“文件”multiple="multiple“/>的输入处理
EN

Stack Overflow用户
提问于 2011-09-08 02:10:43
回答 1查看 6.6K关注 0票数 8

我正在尝试实现一个HTML5输入字段,让用户选择多个文件进行上传。我的表格中有以下内容:

代码语言:javascript
复制
<form method="post" enctype="multipart/form-data" action="index.cfm">
    <input type="file" name="Images" id="Images" multiple="multiple" accept="image/jpeg, image/gif, image/png, application/zip" />
    ...

我可以在浏览器中选择多个文件,然后单击upload,但我不确定如何使用ColdFusion处理表单post。我原以为下面的命令会起作用,但这只会上传我选择的最后一个文件:

代码语言:javascript
复制
<cfloop list="#attributes.Images#" index="Image">
    <cffile
        destination = "#ExpandPath(Trim(request.TempFolder))#"
        filefield = "Images"
        action = "upload"
        nameconflict = "MakeUnique"
        result = "UploadedTempFile"
    >
    <cfoutput>#UploadedTempFile.serverFile#<br /></cfoutput>
</cfloop>

有人能向我解释一下如何循环通过我的一个表单域提交的所有文件,以便我可以单独处理这些文件吗?

EN

回答 1

Stack Overflow用户

发布于 2018-08-08 22:33:10

fileUploadAll()/<cffile action="uploadAll">允许你上传所有文件,也可以上传一个<input type="file" multiple>的多个文件。

尽管它总是处理一个请求的所有文件,也就是说,它不区分不同的文件输入,你可能想要不同的处理方式,例如,通过accept参数设置不同的允许MIME类型,或者为每个输入将文件上传到不同的位置。

因此,我在Adobe ColdFusionLucee issue tracker上创建了一个增强请求。

基本思想是更改fileUpload()函数和<cffile action="upload">,以便在表单域有多个文件时自动返回一个数组,或者如果这会导致兼容性问题,则向控制它的false添加一个新参数multiple defaulting。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7338530

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档