在网页上显示数据的最佳方式

时间:2012-11-29 17:35:06

标签: javascript python html ajax

我正在创建一个从数据库访问测试数据的Intranet站点,并将结果显示回一般的HTML网页。

现在我将Python设置为cgi,并且我现在需要获得所需的结果。但现在要求实时显示一些信息。

我是通过这种方式进入Web编程世界的新手,但是运行Python脚本并在不重新加载的情况下在HTML页面上显示信息的最佳方式是什么。

我知道如何在Python服务器端获取信息并在HTML方面正确显示信息,但我缺少的是我如何将两者链接在一起或从HTML端调用Python方法。 / p>

任何建议或简单的例子都会很棒。

由于

4 个答案:

答案 0 :(得分:2)

简单的谷歌搜索将帮助您找到如何创建python网站。

Here is an example

答案 1 :(得分:2)

如果通过“重新加载”表示用户不必在浏览器中点击“重新加载”/“刷新”,那么您需要设置一个以某种格式返回数据的终点URL(JSON) / XML或甚至可以普通插入DOM的HTML),并使用AJAX定期轮询该URL并进行更新。要么是这样,要么研究Web套接字。

答案 2 :(得分:1)

如果您想重新加载整个页面,那么只需在HEAD部分的HTML中添加meta refresh标记:

<meta http-equiv="refresh" content="20" />

,页面将每20秒重新加载一次。

如果您想定期填充页面元素,并且您不太关心它的外观(或者可以花时间调整子页面的外观),您可以使用IFRAME通过显示子页面第二个CGI,其HTML中有元刷新:

<iframe class="realtime-data" src="/cgi-bin/realtime.py"></iframe>

其他更灵活的情况还需要您提供第二个CGI,该CGI将在调用时发布实时数据,并使用例如主页从主页轮询CGI。 jQuery的load()方法:

setInterval(function() {
    $('#div_where_html_goes').load('/cgi-bin/realtime.py')
}, 20000); // 20k milliseconds

以上只是一个提示,而不是一个好的编程实践:

  • 没有加载错误的规定
  • 没有延迟和脚本堆积的规定
  • CGI不仅要提供数据,还要提供一些布局

......但它应该足以让你开始。基本上,你安装jQuery(如果从谷歌加载一行HTML代码),你在页面的末尾提供初始化代码。你在那里放了Javascript代码:

<script type="text/javascript">
// <![CDATA[ <!--
    (function($){
        $(function(){

            setInterval(function() {
                $('#div_where_html_goes').load('/cgi-bin/realtime.py')
            }, 20000); // 20k milliseconds

        })
    })(jQuery);
// --> ]]>
</script>
</body>

答案 3 :(得分:0)

您可以使用bottle。本教程将指导您创建一个简单的站点。

要进行更新,您需要使用javascript(在页面中)与服务器进行交互。