当前位置: 首页 > 面试题库 >

带有计时器的jQuery / Ajax调用

宋正真
2023-03-14
问题内容

我有一个php页面,可回显数据库中的行。我想每30秒通过jquery /
ajax调用一次。但是我还希望能够随时调用该页面,以便如果我通过表单添加记录,则在表单提交后,我希望通过ajax通过调用页面来立即更新结果。谁能指出我正确的方向或提供一些基本代码,以便我设法找出答案?对于jquery
/ ajax还是很新的。


问题答案:

如果要在计时器上进行设置,则可以使用JavaScript setTimeoutsetInterval方法:

setTimeout ( expression, timeout );
setInterval ( expression, interval );

where expression是一个函数,timeoutand
interval是整数(以毫秒为单位)。setTimeout运行一次计时器,然后运行expression一次,而setInterval将在expression每次interval通过时运行。

因此,在您的情况下,它将像这样工作:

setInterval(function() {
    //call $.ajax here
}, 5000); //5 seconds

至于Ajax,请参阅jQuery的ajax()method。如果运行一个间隔,没有什么可以阻止您从ajax()代码中的其他位置调用该间隔。

如果您希望每30秒运行一次间隔,直到用户启动表单提交…然后在此之后创建一个新间隔,则也可以:

setInterval() 返回一个整数,该整数是时间间隔的ID。

var id = setInterval(function() {
    //call $.ajax here
}, 30000); // 30 seconds

如果将该ID存储在变量中,则可以调用clearInterval(id),它将停止进程。

然后,您可以setInterval()在完成ajax表单提交后重新初始化呼叫。



 类似资料:
  • 问题内容: 在某些情况下, 加号根本不会发布,将发送空格。我已经试过了: 没有运气。有人知道如何解决此问题吗? 问题答案: 应该 或简单地

  • 问题内容: 我不太了解如何使用jQuery的ajax函数的回调。 我在JavaScript中有以下代码: 在服务器端(AppEngine / Python),我获取了回调参数的值并使用 但是随后我在浏览器控制台中看到了。 处理此问题的正确方法是什么?现在,我得到了所需的结果,但是我知道这不正确的事实困扰着我。 问题答案: 这就是我在我身上所做的

  • 我有一种情况,我的ajax调用必须以特定的顺序执行。我在其他情况下使用了jQueryDeferred对象,但似乎找不到一种方法来使其正常运行。 我有一个函数,在它的生命周期中执行许多请求。一些请求将在其他请求的成功回调期间执行。 我的问题:当调用时,是否有方法将所有嵌套的延迟对象返回到原始的

  • 问题内容: 我试图使用ES6 Promise通过jQuery发出发布请求: 我有一个功能: 我这样称呼它: 我的服务器正在返回预期的响应,请求主体为JSON格式,但我的控制台输出为: 好:未定义 为什么我没有得到返回的数据? 感谢任何人/所有人的帮助。 -更新编辑- 我已将我的js减少为: 我仍然未定义为输出。如果在“网络”选项卡中打开请求,则可以看到带有正确数据的响应对象。发出了请求,我的服务器

  • 问题内容: 我正在尝试找到一种将jQuery自动完成与回调源结合使用的方法,该回调源通过ajax json对象列表从服务器获取数据。 有人可以给些指示吗? 我用谷歌搜索,但找不到完整的解决方案。 问题答案: 带有源代码的自动完成文档中的完美示例。 jQuery HTML

  • 问题内容: 我有一个简单的网址数组,我想用jQuery加载每个网址。我正在使用,但是似乎无法使用它,所以我切换到了-我几乎可以使用它了,但是我得到的结果很奇怪。我希望有人可以帮助我改善这项工作。 这应该输出.. 步骤1.0 步骤1.1 步骤1.2 第2步 然后数组包含所有3个Ajax请求的结果。这可能吗? 问题答案: 首先,您必须决定是要并行处理三个ajax调用(同时运行所有ajax调用,而总运行