繁体   English   中英

尝试在返回动态内容时加载“ div”

[英]Attempting to load a “div” as dynamic content is returned

我有一个PHP程序,该程序执行一系列键驱动的SSH连接(以Apache用户www-data的身份),并在远程服务器上执行脚本,以检查几个服务/守护进程的状态。 根据报告的状态“正在运行”或“已停止”,该功能确定应在div表单元格中显示的适当图像(绿色对勾或红色'x')。

看起来像这样:

服务状态屏幕截图

问题是要轮询9个服务器,并动态构建18个div表单元。 我想刷新/显示每个div,因为每个SSH调用都会返回数据。

这是PHP代码,每个SSH调用都会在其中插入包含结果的div:

           $cmd_string=buildServiceCallString($distIP, "VolCreationService","serviceCheck");

            echo "<div class=\"statTableRow\">";
        echo "<div class=\"statData statTableCell\">";
            $cmd_output=shell_exec($cmd_string);
            echo "<span class=\"serviceTitle\">VolCreationService: <img class=\"runStatImage\" src=\"".displayRunStatusImage($cmd_output)."\"></span>";
            $cmd_output="";
                   echo "</div>"; //end statTableCell
                   echo "</div>"; //end statTableRow

我已经尽力了解jQuery .load()方法,但尚未点击它。 我想这将涉及一个回调,但是我不理解如何通过异步调用来访问和显示该元素。

任何意见是极大的赞赏!

-TU

因此,这是一个非常简单的示例,说明如何将内容动态添加到DOM元素。 您可以使用$ .ajax

 var request = $.ajax({
      type: "POST",
      url: "example.php",
      data: data_obj,
      dataType: "html"
   }).done(function(msg) {
         $("#example_element").append(msg);
      }

网址:将指向您的文件。

data:是可选的,但是使用该选项将允许您传递要检索的密钥。

dataType:指定您期望的返回类型

在.done中,您可以执行的最简单的加载内容方法是将其附加到某些内容上(或替换,但是您可能需要附加它)。

请注意,此调用不会检查错误情况。

该文档非常冗长,但如果计划使用AJAX调用,则仍应阅读该文档。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM