当计时器命中 00:00:00 时,将计时器文本替换为数据库计算结果

本文关键字:计时器 数据库 计算 结果 文本替换 | 更新日期: 2023-09-27 18:22:06

我有一个我正在使用的jQuery倒数计时器,我需要能够访问我的数据库并执行一些计算,然后返回结果:

$('#expireMessage').countdown({until: shortly,
    expiryText: '<div class="over">It''s all over</div>'});
$('#expireMessageStart').click(function() {
    shortly = new Date();
    shortly.setSeconds(shortly.getSeconds() + 5.5);
    $('#expireMessage').countdown('change', {until: shortly});
});

现在,上面的代码只显示一个倒数计时器,并倒计时。当它击中时

00:

00:00

它显示一条消息"一切都结束了"。

但是我需要做的是根据数据库计算的结果显示不同的消息。

我可以做的数据库工作,但我不确定在使用 jQuery 时如何从数据库中检索该信息。我真的很感激你的帮助。

谢谢

当计时器命中 00:00:00 时,将计时器文本替换为数据库计算结果

您需要在服务器端设置一些东西来为您与数据库通信,然后以 JSON 格式返回结果。该内容是什么取决于您的服务器端代码是用什么编写的。你用的是PHP吗?爪哇岛?ASP.NET?

我主要在 ASP.NET 工作,因此解决此问题的一种方法是向我的页面添加一个WebMethod,该执行数据库查询,构建消息,将其序列化为JSON,然后将其返回给客户端。

在你的JavaScript中,你需要执行一个XMLHttpRequest(如果你使用的是常规JavaScript(或一个jQuery AJAX请求。

下面是一个非常简单的示例,说明 jQuery AJAX 调用可能是什么样子的:

$.ajax({
  url: 'http://mysite.com/getmymessage',
  success: function( data ) {
      // Here's where you'd update your countdown display, but I'm just writing to the console
      console.log( 'The server says: ' + data.myDbResult );
  }
});