如何刷新textarea部分而不刷新整个页面

时间:2015-01-09 02:52:58

标签: php

我有一个脚本:

<?php
header("refresh: 7;");
include 'theme.php';
ceklogin();
css();
exec('/www/openvpn_wget_status.sh');
echo '<br>';
echo file_get_contents( "/www/openvpn_status.txt" );
echo '<textarea readonly> Content Here </textarea></div></body></html>';
>?

它每7秒刷新整个页面,有没有办法只刷新textarea而不是整个页面?我是一个复制粘贴的人,所以请详细解释是否有办法做到这一点。

1 个答案:

答案 0 :(得分:0)

您可以使用Javascript并获取文本文件的内容(如果它可公开访问(并假设/www是您的webroot):

<script>
    function getFileContents() {
        var client = new XMLHttpRequest();
        client.open('GET', '/openvpn_status.txt');
        client.onreadystatechange = function() {
            document.querySelector("textarea").value = client.responseText;
        }
        client.send();
    }
    setInterval(getFileContents, 7000);
</script>

此代码首先创建一个名为getFileContents()的函数,该函数实际上传递到Web根目录中名为openvpn_status.txt的文件,并将内容加载到与textarea节点类型匹配的第一个元素中

然后将此函数调用的时间间隔设置为7000 ms或7秒。