- 我的本地机器上有一个文本文件。
- 我在jsp页面中有一个按钮。
- 单击按钮时,我需要获取文本文件内容。
- 该文件有n个内容。
谁能给我javascript函数来实现这一点。
谁能给我javascript函数来实现这一点。
您应该在问题中指定您希望读取客户端文件,因为我看到很多都是指服务器端读取。
你应该看看 FileAPI - 一个 HTML 5 Javascript 附加项,它允许 JavaScript 通过文件输入读取文件内容。
我正在为您编写代码示例 - 但这是一个您应该阅读的好网站
如果没有 FileAPI - 您仍然可以使用带有 target="some iframe" 的表单中的文件输入字段 - 然后让服务器上传文件并返回文本。(FormData 允许在 Ajax 中上传文件,但并非所有浏览器都支持)。
所以 File API 是你的选择 这里是你如何使用 File API
<input type="file"/>
<script>
$(function(){
$("input").change(function(e){
console.log(["file changed",e]);
var myFile = e.target.files[0];
var reader = new FileReader();
reader.onload = function(e){
console.log(["this is the contents of the file",e.target.result]);
};
reader.readAsText(myFile)
});
}
)
</script>
您还可以实现拖放界面(如 google gmail 有)
$("div").on("dragover",function(e){
e.dataTransfer = e.originalEvent.dataTransfer;
e.stopPropagation();
e.preventDefault();
e.dataTransfer.dropEffect = 'copy'; // Explicitly show this is a copy.
}).on("drop",function(e){
e.dataTransfer = e.originalEvent.dataTransfer;
e.stopPropagation();
e.preventDefault();
console.log(["selected files", e.dataTransfer.files])});