Javascript 函数运行一次

Javascript Function Runs Once

我制作了一个 Javascript 脚本,该脚本成功地从 SQLite 数据库中提取,该数据库同时被 Python 脚本添加到其中。我不知道 CGI,但我有这个工作......在一定程度上。

当我第一次 运行 页面时,它工作正常。它使用 PHP 成功地为我的每个列提取了最后输入的值,将这些值存储到独立的 Javascript 变量中,清理它们使其只是数据,然后打印它们。这是我在一次执行整个脚本时看到的示例:

问题所在:刷新按钮不起作用。按钮本身有以下代码:

<button onclick="grabLatestRecord()">Refresh</button>

整个脚本在这里:http://pastebin.com/Ym74DhJU

我尝试添加一个刷新函数,以便在打印清理后的数据后将其发送到刷新函数,然后重新启动该过程,但这没有用。它必须是带有 PHP 的东西,对吗?

您需要仔细阅读您嵌入到页面中的 PHP 是否确实有效。这是一个非常重要的概念,可以帮助您了解 PHP、服务器、Javascript、浏览器等系统的工作原理。

PHP 运行仅在服务器上。

Javascript 在您的网页中 运行 仅在浏览器中。

您的网页中嵌入的 PHP 运行 仅在首次在服务器上创建页面并发送到浏览器时出现一次,没有 PHP 在页面中。那时只是 Javascript、HTML 和 CSS。所以调用你的 grabLatestRecord() 函数不会 运行 任何 PHP。首次创建页面时,已经在服务器上对其进行了评估。如果你在浏览器里做一个View/Source,你可以看看实际的grabLatestRecord()函数,在浏览器里看到里面没有PHP。

如果您想从网页上执行一些 PHP 以获取最新记录,那么您必须向您的服务器发出 Ajax 调用。这有点像远程 PHP 调用。客户端 Javascript 通过 Ajax 调用向您的服务器发送请求。服务器用您的结果响应 Ajax 调用。结果返回到浏览器中的 Javascript,然后您可以使用 Javascript.

更新页面内容

关于如何设置 PHP 来处理 Ajax 呼叫的文章数不胜数,所以我建议您在那里阅读一些文章,然后在遇到问题时再回来提出新问题坚持这样做。