第一天接触 JavaScript ,纯属学习。这里演示加载的文件仅限于文本文件,因为示例里是要把文件内容显示出来。
有 html 文件如下:
<!DOCTYPE html>
<html>
<head>
<title> upload file </title>
<meta charset="UTF-8">
<input type="file" id="fileUpload" hidden/>
<button id="btnUpload" type="button">choose file...</button>
<script src="upload.js"></script>
</head>
<body></body>
</html>
这个html 页面显示的效果就是这个样子,输入框已经被隐藏掉了:
有 js 文件如下:
var btnUpload = document.getElementById("btnUpload");
btnUpload.onclick = function (ev) {
console.log(ev);
input.click();
}
var input = document.getElementById('fileUpload');
input.onchange = function(ev) {
if(!ev.target.files[0]) {
return;
}
var fileName = ev.target.files[0];
var reader = new FileReader();
reader.readAsText(fileName, "UTF-8");
reader.onload = function(e) {
var content = reader.result;
if(content.length > 0) {
content = content.replace(/\n/g, "</br>");
document.write(content);
} else {
window.alert("you select a null file!!!");
}
}
};
按钮的单击事件绑定到 input.click() 事件上了。然后是获取文件名,加载文件内容,替换换行符,最后直接显示内容。
加载0长度的文件时: