我是如何在不使用flash或java小程序的情况下,使用jsf(或primefaces)在操作系统文件选择器中过滤文件的
我说的是一些可以像这样做的事情:
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/Input#attr-接受
如果我试着像这里举例的那样:
http://www.primefaces.org/showcase/ui/fileUploadDnd.jsf
文件选取器不进行筛选。
我不关心不支持此HTML属性的浏览器的兼容性。
我感兴趣的是让浏览器从一开始就输出正确的HTML。如果我能用纯HTML来做,我想用纯HTML做。
没有javascript:
您可以通过实现该组件的自定义渲染来实现。。但这不值得…
使用javascript
由于多文件上传组件是jQuery file upload插件,您可以使用文件输入字段的accept属性来限制文件类型选择,accept属性在Internet Explorer 10、Firefox、Opera、Chrome和Safari 6中受支持。
使用jQuery将文件限制为图像的示例(假设您的fileUpload小部件Var是fileUploadWV):
<script>
$(function() {
// setTimeout waits till the widgetVar is ready!
setTimeout(PF('fileUploadWV').jq.find('input:file').attr('accept', 'image/*'), 2000);
});
</script>
查看更多:
- PrimeFaces小工具Var简介
- 如何限制文件选择对话框仅显示特定的文件类型
希望这能有所帮助。