根据时间间隔重新加载javascript小部件

根据时间间隔重新加载javascript小部件,javascript,jquery,ajax,json,refresh,Javascript,Jquery,Ajax,Json,Refresh,http://jsfiddle.net/4B2Bc/1/使用jquery,您可以设置一个类似计时器的时间间隔 $(function() { setInterval( "refreshWidget()", timeinmilliseconds ); }); 您的脚本将擦除页面,因为您正在使用: 写入已加载的文档而不调用document.open()将自动执行document.open调用 以及: 如果目标中存在文档,此方法将清除该文档 因此,如果您在任何时候调用document.writ

http://jsfiddle.net/4B2Bc/1/
使用jquery,您可以设置一个类似计时器的时间间隔

$(function() {
    setInterval( "refreshWidget()", timeinmilliseconds );
});

您的脚本将擦除页面,因为您正在使用:

写入已加载的文档而不调用
document.open()
将自动执行
document.open
调用

以及:

如果目标中存在文档,此方法将清除该文档

因此,如果您在任何时候调用
document.write
,除了最初加载文档时,您都会用您编写的内容替换整个文档

不要使用
document.write
进行更新,只需使用一点AJAX从服务器重新加载一些新数据,然后使用DOM操作或jQuery技术最好的方法来替换需要替换的部分


一旦工作正常,使用或安排对服务器的调用以获取新数据。

setInterval
不是jQuery函数。另外,您应该使用重载来获取函数引用,而不是字符串。我添加了另一个javascript,它有一个数据数组,该数组带有一个函数,该函数触发主js文件处理该数据数组。因此,我想要做的是再次重新加载该函数并刷新javascript调用。以某种方式绕过我所采用的方法using@Anush:听起来像是你在手动滚动一个JSONP系统。那么我应该怎么做才能附加到文档而不是重写它。@Anush:你可以使用
document.createElement('script')
来构建一个新的
元素,然后将其添加到页面中。或者使用AJAX/JSONP根据需要加载更多数据。这里的问题是,我使用普通JS重新加载选项,但是当我执行
元素.add时,它会添加到下拉列表中,但是小部件的
choicesList
仍然保留旧的值列表。那么如何应对呢?