Jquery加载页面,返回结果

时间:2014-01-25 16:16:56

标签: javascript php jquery ajax load

我有一个安装脚本,我通常通过Linux终端会话运行。我决定看看我是否可以制作一个只有一个按钮的简单页面,当按下脚本运行时。

我设法让它工作,按下HTML按钮确实运行脚本,并且工作正常。

理想情况下,我希望看到脚本的输出返回到其上有按钮的页面,然后我可以检查返回数据中的值以确保它正常工作。我该怎么做?

这是我到目前为止所拥有的......

这是 index.php

<script src="http://code.jquery.com/jquery-latest.min.js" type="text/javascript"></script>
<script type="text/javascript">
        $(document).ready(function() {

        $("#scs").click(function() {
            $("#status").html("<p>Please Wait! TESTING</p>");
        $.ajax({
          url: 'go.php?ab=1',
          complete: function(xhr, textStatus) {
            alert(textStatus);
          },
          success: function(data, textStatus, xhr) {
            alert(textStatus);
          },
          error: function(xhr, textStatus, errorThrown) {
            alert(textStatus);
          }
        });
        });
        });
        </script>

<span id="status"><span>
<input type="button" id="scs" value="TEST" />

按下SCS按钮时,会调用 go.php 页面并传递变量 ab = 1 。这将运行以下内容:

go.php

if (isset($_REQUEST['ab']) && $_REQUEST['ab']=='1') {
    exec('sudo /home/user/dowork.script', $out);
    echo $out;
    }

这样可以正常运行'dowork.script'。 但我想将 $ out 的结果传递回index.php,以便我可以搜索关键词。例如:是|已安装|成功或否|失败|错误

然后,如果没有错误,我可以显示一个图像,或者如果有错误,我可以显示另一个。

1 个答案:

答案 0 :(得分:0)

这对我有用..

$("#scs").click(function() {
    $("#status").html("<p>Please Wait! TESTING</p>");
$.ajax({
  url: 'go.php?ab=1',
  success: function(data, textStatus, xhr) {
  alert (data);
}
});
});

更新了go.php以显示:

if (in_array("OK", $output)) echo "Finished";

现在已完成传回并显示在警报中。 :)