包含PHP代码的Javascript字符串变量

时间:2010-02-01 16:32:58

标签: php javascript jquery

我基本上只想用jQuery将javascript变量附加到HTML div。但是我需要将一些PHP代码作为字符串附加,它不需要执行它只需要显示为一个普通的旧字符串字符串。

以下代码似乎没有追加,因为我认为它仍然被认为是PHP语法。

var script = '<?php wp_list_pages(); ?>';
divName.innerHTML = script;

非常感谢任何帮助。

7 个答案:

答案 0 :(得分:4)

只是一个猜测...用HTML实体(&amp; lt;和&amp; gt;)替换php括号,这样它就不会被解释为PHP代码(如果你通过PHP运行包含JS的文件),也不会浏览器将奇怪的HTML代码(浏览器搜索括号为html标签,请记住......)。

答案 1 :(得分:2)

将其包裹在CODE标签中,如下所示:

var script = '<code><?php wp_list_pages(); ?></code>';

答案 2 :(得分:2)

尝试:

var script = '<?php echo '<?php wp_list_pages(); ?>'; ?>';

答案 3 :(得分:1)

你可能应该逃避PHP文本中的“热门”HTML令牌:

div.innerHTML = script.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/>/g, '&gt;');

答案 4 :(得分:1)

您需要使用HTML实体(&amp; lt;和&amp; gt;)简单地转义字符串

重要提示:我希望您在这里所做的就是尝试显示PHP代码。请不要尝试将PHP代码在表单字段中传递回服务器并通过eval()或其他某些方式执行的任何问题。这将是一个难以想象的可怕想法。只要您让客户端访问将在服务器上执行的代码,您就可以开启各种漏洞利用。您的服务器将被没收。不要收200美元。游戏结束。失败。

答案 5 :(得分:0)

PHP在页面发送到浏览器之前执行,因此您可以转到该页面,打开其来源,看看是否在该行中看到了您需要查看的内容,例如:

var script = 'the content you expect to see';

如果没有,请告诉我们您的看法。

答案 6 :(得分:0)

如果您正在寻找String variable to execute PHP code尝试查看此处。我之所以提到这一点,是因为这是我想要做的事情,而这个问题出现了。