具体实现前端多文件上传预览的详细代码
时间: 2024-05-05 12:18:46 浏览: 13
以下是基于HTML5的前端多文件上传预览的代码示例:
HTML部分:
```html
<!DOCTYPE html>
<html>
<head>
<title>多文件上传预览</title>
</head>
<body>
<input type="file" id="files" name="files[]" multiple>
<output id="result"></output>
<script>
function handleFileSelect(evt) {
var files = evt.target.files; // FileList object
// Loop through the FileList and render image files as thumbnails.
for (var i = 0, f; f = files[i]; i++) {
// Only process image files.
if (!f.type.match('image.*')) {
continue;
}
var reader = new FileReader();
// Closure to capture the file information.
reader.onload = (function(theFile) {
return function(e) {
// Render thumbnail.
var span = document.createElement('span');
span.innerHTML = ['<img class="thumb" src="', e.target.result,
'" title="', escape(theFile.name), '"/>'].join('');
document.getElementById('result').insertBefore(span, null);
};
})(f);
// Read in the image file as a data URL.
reader.readAsDataURL(f);
}
}
document.getElementById('files').addEventListener('change', handleFileSelect, false);
</script>
</body>
</html>
```
JavaScript部分:
该代码实现了一个函数来处理选择的文件,只保留图像文件并使用FileReader API渲染它们。
请注意:该代码仅适用于现代浏览器,因为它使用了HTML5 API File API和FileReader API。