如何运行通过JS动态添加到DOM中的php代码

how to run php code which is added dynamically to DOM via JS

本文关键字:添加 动态 DOM 中的 代码 php JS 何运行 运行      更新时间:2023-09-26

所以我有这个网站项目,我将在其中加载内容分区中的内容。

<div id="content_wrapper">
  <!-- content goes here -->
</div>

和带有的CCD_ 1文件

var c_index = 'Some cool text stuff<br>' +
              'pretty neat, and also with a<br>' +
              '<img src="image1.png" alt="thumb1">';
var c_service = '/* other stuff in here */';

并且取决于点击我做:

$('#content_wrapper').html(c_index); // or different content vars

我的问题是如何将其与php结合起来。例如,从数据库中提取的一些信息:

var c_dynamic = '<?php echo $output["row1"] . ' ' . $output["row2"] ?>';
$('#content_wrapper').html(c_dynamic);

有什么类似的东西吗?我可以附加PHP,然后在不重新加载页面的情况下运行它。

我不知道这是否是您想要的http://php.net/manual/en/function.eval.php,但就连php也认为这是一个糟糕的想法。如果这是您最初传递的数据,稍后只需要显示,请将其存储在javascript var中,并在需要时访问它,否则,如问题注释中所述,请在需要时调用ajax来检索它。

你可能做不到。在JavaScript启动之前,您的PHP代码已经执行完毕。您在屏幕上看到的不是PHP代码,而是PHP代码的输出。解释器不会运行它,也不会运行你添加到它的任何东西。

可能有什么把戏我不知道,但我打赌你做不到。

另一种做您想做的事情的方法可能是从JavaScript中调用一个PHP脚本,该脚本会发回一些JSON。有问题的PHP脚本将为您运行一个数据库查询,并将您想要以JSON形式呈现给用户的信息发回。然后,您可以将检索到的信息插入到DOM中。

http://php.net/manual/en/function.json-encode.php

这个功能应该派上用场。

您需要使用Ajax来完成此操作:http://api.jquery.com/jquery.ajax

页面加载后不能设置php变量。