【发布时间】:2014-12-31 13:14:26
【问题描述】:
在我的 HTML 页面上,我有一个获取函数 getStatus() 值的跨度:
<span id="sysStatus" style="font-weight: bold;">{{ status }}</span>
返回状态的函数:
def getStatus():
state = database().getState()
if state:
status = " On"
else:
status = "Off"
return status
渲染html页面:
class Tongles(flask.views.MethodView):
def get(self):
return flask.render_template('page.html', status=getStatus())
我想以某种方式动态刷新系统的状态,以及 span 上的文本。
如何在不重新加载整个页面的情况下调用 getStatus 函数?
【问题讨论】:
-
Flask 应用程序不同于普通的 Python 应用程序。因为他们必须更新和 HTML 部分。我可以每隔几分钟轻松执行 Python 函数,但重点是动态更新跨度文本,这是对用户的指示。
-
理论解决方案:制作一个特殊的flask handler专门返回状态,然后在客户端请ajax定期查询状态。
-
您可以使用套接字或使用 AJAX 请求轮询服务器以获取
getStatus。