【问题标题】:Limit File Types Shown in Browse Window限制浏览窗口中显示的文件类型
【发布时间】:2023-04-09 14:31:01
【问题描述】:

真的没有办法限制浏览文件窗口中显示的文件类型吗?我试过这个:

<input type="file" accept="text/xml" name="parameter_file" />

Firefox,IE 忽略它。我从另一个问题中找到了以下摘录:

Accept 属性被引入 RFC 1867,旨在启用 基于 MIME 类型的文件类型过滤 用于文件选择控件。但最, 如果不是全部,浏览器不会使用 this 属性。

我还能如何做到这一点?我知道你可以使用 Flash 实现这一点,但我并不想使用 Flash。

我将在服务器端检查选定的文件类型,但我想通过更轻松地仅显示 XML 文件来改善用户体验。

感谢大家的帮助。

【问题讨论】:

    标签: javascript html css


    【解决方案1】:

    AFAIK,没有办法做到这一点。下一个最好的办法是使用 JS 在提交表单之前检查文件扩展名,这样用户就不会浪费时间上传不被接受的文件,而是服务器端文件类型检查例程也应该保留,因为第一种方法很容易通过关闭JS来绕过。

    这是一个 jQuery 解决方案:How to have jQuery restrict file types on upload?

    希望这会有所帮助。

    【讨论】:

    • 我有一个 Jquery 扩展检查器。我的主要希望只是让用户更容易只看到 XML 文件。哦,好吧,我不认为花时间实施 Flash/java 解决方案带来的好处更大。
    【解决方案2】:

    (对于程序员)不可能对使用&lt;input type=file&gt; 打开的文件对话框产生任何影响 这是一项安全功能,对此无能为力。

    如果您绝对需要此功能(以及其他功能,例如允许多选),那么您必须使用文件打开对话框的 flash(或 java 小程序等)实现。

    网上有一些实现,IIRC,YUI 里也有。

    【讨论】:

    • 我可能错了,但据我所知,SWF Upload 和 Uploadify 都使用默认的文件打开对话框,并且扩展名不限于某些文件类型,这正是 Abs 的问题。
    • @FreekOne:你是对的。我在某个地方读错了(或想象的:-)。删除了引用。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-05
    • 1970-01-01
    相关资源
    最近更新 更多