Javascript setInterval和json
我有一个简单的html表单。(输入(文本)和提交按钮。)。当我键入任何单词并按下提交按钮时,将显示最近的10条推文。tweet列表必须每15秒刷新一次。我用javascript和json成功地访问了twitters数据库(只有公共tweets)。但是刷新部分不能正常工作。Javascript setInterval和json,javascript,jquery,json,Javascript,Jquery,Json,我有一个简单的html表单。(输入(文本)和提交按钮。)。当我键入任何单词并按下提交按钮时,将显示最近的10条推文。tweet列表必须每15秒刷新一次。我用javascript和json成功地访问了twitters数据库(只有公共tweets)。但是刷新部分不能正常工作。 以下是我的javascript代码: function f() { var words = document.getElementsByTagName("input"); words = words[0].va
以下是我的javascript代码:
function f()
{
var words = document.getElementsByTagName("input");
words = words[0].value;
json(words);
setInterval(function(){
json(words);
}, 15000);
}
function json(words)
{
$.getJSON("http://search.twitter.com/search.json?q="+words+"&rpp=10&callback=?", function(data){
var results = data.results;
var tweet ='<div>';
for(i=0; i<results.length; i++){
var nickname = results[i].from_user;
var text = results[i].text;
tweet+='<b><p>'+nickname+'</p></b><br/>';
tweet+='<p>'+text+'</p>';
}
tweet +='</div>';
$('#tweets').html(tweet);
});
}
函数f()
{
var words=document.getElementsByTagName(“输入”);
单词=单词[0]。值;
json(文字);
setInterval(函数(){
json(文字);
}, 15000);
}
函数json(单词)
{
$.getJSON(“http://search.twitter.com/search.json?q=“+words+”&rpp=10&callback=?”,函数(数据){
var结果=data.results;
var tweet='';
对于(i=0;i您需要清除上一个setInterval
您可以这样做:
var intv;
function f()
{
clearInterval(intv);
var words = document.getElementsByTagName("input");
words = words[0].value;
json(words);
intv= setInterval(function(){
json(words);
}, 15000);
}
谢谢,它工作了。但是我在json函数中定义了results变量,并且必须根据我的代码在每次调用中刷新它。它是如何保存旧值的?您仍然获得旧值吗?我想这是因为您没有清除之前的intervali添加的“clearInterval(intv)”语句,它工作得很好。我要求提供我以前的代码。“result”变量如何保存旧值?它必须在旧代码的每次调用中刷新..multiplesetInterval()
正在使用不同的words
值同时调用json函数。因此,当您更改words
时,json函数仍在使用以前的words
值运行。希望这能消除您的疑问??找到一篇文章:。它消除了我的疑问。感谢您的回复。