vic*_*rio 2 java file-extension wicket file-upload
我有一个FileUploadField组件,我想只上传*.css或*.html文件.但现在,我可以上传任何类型的文件.我怎样才能将文件的扩展名设置为该组件?我的代码和平:
FileUploadField ret = new FileUploadField("uploadField");
ret.setRequired(true);
form.add(fileUploadField);
Run Code Online (Sandbox Code Playgroud)
谢谢!
小智 7
请注意,它accept仅适用于现代浏览器(文档),您也可以在服务器端进行检查.
解决方案:
FileUploadField ret = new FileUploadField("uploadField") {
@Override
protected void onComponentTag(ComponentTag tag)
{
// Default handling for component tag
super.onComponentTag(tag);
tag.put("accept", ".css,.html");
}
@Override
public List<FileUpload> getFileUploads() {
return filter(super.getFileUploads());
}
private List<FileUpload> filter(List<FileUpload> fileUploads) {
// filter out all files with invalid extension
}
};
Run Code Online (Sandbox Code Playgroud)
我必须在 html 文件中设置它,而不是在 java 文件中:
<input type="file" wicket:id="uploadField" accept=".csv, .html"/>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3210 次 |
| 最近记录: |