Javascript setInterval和json

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

我有一个简单的html表单。(输入(文本)和提交按钮。)。当我键入任何单词并按下提交按钮时,将显示最近的10条推文。tweet列表必须每15秒刷新一次。我用javascript和json成功地访问了twitters数据库(只有公共tweets)。但是刷新部分不能正常工作。
以下是我的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”变量如何保存旧值?它必须在旧代码的每次调用中刷新..multiple
setInterval()
正在使用不同的
words
值同时调用json函数。因此,当您更改
words
时,json函数仍在使用以前的
words
值运行。希望这能消除您的疑问??找到一篇文章:。它消除了我的疑问。感谢您的回复。