【问题标题】:Importing a plain-text file using HTML5 and JavaScript使用 HTML5 和 JavaScript 导入纯文本文件
【发布时间】:2011-05-14 21:35:36
【问题描述】:

我是 JavaScript 新手,如果这个问题的答案很明显,请见谅。

我正在尝试为文本编辑器网络应用程序设置导入功能。

我的代码如下:

function dataImport() {
    confirm("Are you sure you want to import the selected file? This will overwrite any data that is currently saved in the application workplace.");
    var fileReader = new FileReader();
    window.localStorage.setItem("AppData", fileReader.readAsText(document.querySelector("#import-selector").value));
};

它应该被激活:

<input id="import-selector" type="file" /><button id="import-button" onclick="dataImport();">Import File</button>

但是,它不会将文件的内容写入 localStorage,而是仅写入单词“未定义”。我认为发生了某种错误,但我不确定它是什么。

提前感谢您的任何帮助或建议。

【问题讨论】:

  • Google Chrome,开发者频道。

标签: javascript import local-storage filereader


【解决方案1】:

我从未听说过 HTML 中的 lick 事件。也许这对 HTML5 来说是新事物;)

尝试将您的 onlick="... 触发器更改为 onclick="...

也许这行得通?


现在已经解决了,试试这个例子:Chrome FileReader

我试过了,它完美运行。它将文件内容输出到错误控制台。

祝你好运!

【讨论】:

  • 哇,我太傻了。现在我终于在控制台中遇到了错误!我已经更正了问题以适合。
  • 嗯。我已经改变了你提到的脚本的用途,但我收到了这个错误:“Uncaught TypeError: Cannot read property 'length' of undefined”。我已经把自定义脚本放在这里了:jsfiddle.net/CwfSy
  • 没关系。出于某种原因,它不喜欢我让脚本执行 onclick,但是当我将输入标签设置为 onchange 时,它​​就起作用了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-06-04
  • 1970-01-01
  • 1970-01-01
  • 2012-04-12
相关资源
最近更新 更多