用javascript阅读2个文本文件
我不能让javascript加载2个文本文件与常规脚本或查询,我需要帮助,PLZ给予和回答?
跟jquery一样,
setTimeout(function(){ window.location.reload(1); }, 1000); jQuery.get('file:///Users/trevor/Desktop/x.txt', function(data) { document.getElementById('xp').innerHTML = data; }); jQuery.get('file:///Users/trevor/Desktop/y.txt', function(data) { document.getElementById('xp').innerHTML = data; }); hi
hi
没有,
var client = new XMLHttpRequest(); client.open('GET', 'file:///Users/trevor/Desktop/x.txt'); client.onreadystatechange = function() { document.getElementById('xp').innerHTML = client.responseText; } client.send(); var client = new XMLHttpRequest(); client.open('GET', 'file:///Users/trevor/Desktop/y.txt'); client.onreadystatechange = function() { document.getElementById('yp').innerHTML = client.responseText; } client.send();
可能……
var x = document.getElementById('x').contentWindow.getElementById('xp').innerHTML var y = document.getElementById('y').contentWindow.getElementById('yp').innerHTML function updatex(){document.getElementById(xp).innerHTML = x} function updatey(){document.getElementById(yp).innerHTML = y} setInterval( "updatex(); document.getElementById('x').contentWindow.location.reload();", 1000 ); setInterval( "updatey(); document.getElementById('y').contentWindow.location.reload();", 1000 ); hi
hi
您可以使用setInterval
定期加载文件。 这里有一点点重构:
function loadFile(url, elementId){ var client = new XMLHttpRequest(); client.open('GET', url); client.onreadystatechange = function() { document.getElementById(elementId).innerHTML = client.responseText; } client.send(); }
现在你可以每秒调用两次:
var interval = setInterval(function(){ loadFile('file:///Users/trevor/Desktop/x.txt', 'xp'); loadFile('file:///Users/trevor/Desktop/y.txt', 'yp'); },1000);
一些说明:
- 这可以在您的本地计算机上运行,但不适用于所有浏览器,并且一旦(/ if)页面在服务器上,一定不能正常工作。
- 由于调用是异步的,因此旧调用的响应可能会在较新的调用之后返回。 您可能希望保留旧
client
并取消它们。 - 如果可能,另一种方法是使用
,并且可以定期简单地刷新它们。