Javascript 使用AJAX自动刷新内容

Javascript 使用AJAX自动刷新内容,javascript,ajax,function,refresh,Javascript,Ajax,Function,Refresh,我正试图创建一个显示股票报价的窗格,但它会每10秒自动刷新一次,并且会有系统地更改(比如说goog for ten,然后是aapl等等) 这是我得到的 function stocksUpdate(latest){ if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari xmlhttp=new XMLHttpRequest(); } else {// code for IE6, IE5

我正试图创建一个显示股票报价的窗格,但它会每10秒自动刷新一次,并且会有系统地更改(比如说goog for ten,然后是aapl等等)

这是我得到的

function stocksUpdate(latest){
 if (window.XMLHttpRequest)
 {// code for IE7+, Firefox, Chrome, Opera, Safari
  xmlhttp=new XMLHttpRequest();
 }
 else
 {// code for IE6, IE5
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
 }
 xmlhttp.onreadystatechange=function()
 {
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
 {
  document.getElementById("stocks").innerHTML=xmlhttp.responseText;
 }
 }
 xmlHttp.open("GET","stock.php?latest="+latest+"&x="+Math.random(),true);
 xmlHttp.send();
 }

function stockShow() {
 var symbol = document.getElementById('stocksymbol');
 setInterval(stocksUpdate(symbol), 15);
 }
}   
然后


所以它应该首先得到股票符号,看到它是空的,然后得到第一个股票报价,然后15秒后得到那个股票报价,然后返回下一个,以此类推

php页面工作正常,但没有显示任何内容。我这样做正确吗??我应该先做第一个节目,然后设置设置间隔吗

请注意,h3标记故意为空,并在stock.php中进行了说明,所以不要担心它是空的

非常感谢。 所有的

你都应该更换

setInterval(stocksUpdate(symbol), 15);

现在,在将函数stocksUpdate(symbol)传递给setInterval之前,您需要对其进行求值

同样,15是毫秒的时间,如果你不想让你的服务器崩溃,可以考虑把它提升到更大的程度,而不是使用SETIFATE(这可能会导致2个响应以错误的顺序出现)。在StutsSuffic函数的结尾使用SETTIMEOUT

< P>你应该替换

setInterval(stocksUpdate(symbol), 15);

现在,在将函数stocksUpdate(symbol)传递给setInterval之前,您需要对其进行求值


同样,15是毫秒的时间,如果你不想让你的服务器崩溃,考虑把它提升到更大的程度,而不是使用SETIFATH(这可能会导致2个响应错误的顺序)。在stocksUpdate函数的末尾使用setTimeout

@joseph the dreamer这些:未捕获的SyntaxError:意外标记<|未捕获的SyntaxError:意外标记;|和uncaughtreferenceerror:stocksUpdate未定义,没有说明这两个语法问题在哪里though@joseph-梦想家:未捕获的标记:意外标记<|未捕获的标记:意外标记;|而uncaughtreferenceerror:stocksUpdate未定义,但没有说明这两个语法问题在哪里
setInterval(function(){
    stocksUpdate(symbol);
}, 15);