【问题标题】:Show output of php script using AJAX使用 AJAX 显示 php 脚本的输出
【发布时间】:2013-04-27 13:18:14
【问题描述】:

我有一个 php 脚本,它能够使用 WoL 启动我家中的计算机,然后检查目标机器的连接并输出状态。

我正在尝试为此制作一个不错的网页,我可以在其中按下“开机”链接/按钮,然后运行上述脚本并在“开机”按钮旁边显示状态。

有人告诉我使用 AJAX,但无法让它显示任何内容。

我的 index.php:

<html>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>WOL</title>

<script type="text/javascript" src="jquery.min.js"></script>
<script type="text/javascript">
function doSomething() {
    $.get("status1.php");
    }
</script>

<?php
echo "10.0.0.20 &nbsp;&nbsp;&nbsp; roadrunner &nbsp;&nbsp;&nbsp;";
echo '<a href="#" onclick="doSomething()">power on</a>';
?>

</html>

status1.php 以

结尾
<?php
echo htmlheader(); 
echo htmlcontent(); 
?>

我可能应该提到我对 JS 很陌生,对 php 也有点新。

我做错了什么?

【问题讨论】:

    标签: php javascript html ajax


    【解决方案1】:

    在实际加载加载的内容后,您并没有对其进行任何操作... 可能最简单的方法是使用 load 函数,因为您可以指定其容器以及回调函数。例如:

    HTML 容器

    <div id="mydiv"></div>
    

    JS

    $('#mydiv').load('status1.php');
    

    或使用回调

    $('#mydiv').load('status1.php', function() {alert('Loaded!');});
    

    【讨论】:

    • 我也无法让它工作。让我确保我理解正确:我的 JS 应该如下所示: 我已将
      放入 html 容器中。但是当我按下“开机”时,仍然没有任何反应。
    • 是的,这是正确的代码...查看控制台中是否出现任何错误(例如 Chrome 中的开发工具),并检查当您直接打开文件 status1.php 时会发生什么在浏览器中。
    • facepalm 我的 jquery.min.js 在服务器上被命名错误。它现在在按下链接时显示输出。不在正确的地方,但那是我需要弄乱的一些格式:-) 然而我遇到了另一个问题,我现在才意识到这是我自己的错。 status1.php 有一个功能,如果没有与目标机器建立连接,则刷新页面。它会在回显“FAILED”之前刷新 10 次。这使整个索引变得新鲜。有什么办法可以避免这种情况?
    • 好吧,我想你需要禁用那个令人耳目一新的东西......或者在这里打开另一个问题,因为如果没有关于新问题的更多详细信息,我认为我无法帮助你。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多