我是动态HTML网站的新手,所以请耐心等待。这是我的网络本地运行的网页。在加载我的网页时,我希望它能够读取文本文件并将数据放入文本区域。然后,这将每隔几秒更新一次,以显示文本文件中的更改。我已经阅读了几个关于如何使用HTML中的输入标记来完成它的示例,但我希望它在没有用户输入的情况下加载。
我想使用带有javascript的FileReader(),但不知道如何创建一个可由readAsText(object_here)读取的对象。
<script>
var intervalID1;
function updateTextTimer()
{
intervalID1 = setInterval(updateText,5000);
}
function updateText()
{
var temp = document.getElementById('logOutput');
var reader = new FileReader();
var fileName = "test.txt";
reader.onload = function(e) {temp.value = e.target.result;}
reader.readAsText(file_object);
}
</script>
同样,我更喜欢使用FileReader,因为它很容易,但愿意接受建议。谢谢!
答案 0 :(得分:0)
尝试使用.load()
var timeout = null;
(function loadText() {
$("#logOutput").load("test.txt", function() {
if (timeout) clearTimeout(timeout);
timeout = setTimeout(loadText, 5000)
})
}())
如,
var timeout = null, obj = null;
(function loadText() {
obj = URL.createObjectURL(new Blob([$("#input").val()], {
type: "text/plain"
}))
$("#logOutput").load(obj, function() {
if (timeout) clearTimeout(timeout);
timeout = setTimeout(loadText, 5000)
})
}())
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js">
</script>
<label for="input">input text here:</label><br />
<textarea id="input">
</textarea>
<br />
<label for="logOutput">output:</label>
<br />
<textarea id="logOutput" disabled>
</textarea>
&#13;
答案 1 :(得分:-1)
readAsText
只接受Blob对象,您可以参考how to create a Blob OBj。