在jquery中使用php include

我试图做的是在jquery append属性中使用php include 。 像这样的东西:

 $('a.popup[href^=#]').click(function() { $('body').append(''); 

我的脚本是在一个php文件,服务器端,所以我可以完成这个,但我不知道如何去做。 当涉及到html,css等我可以在php文件中将它和php结合起来,但是当涉及到javascript时,它的引号会让我感到困惑,以及何时以及如何使用括号。 这可能听起来令人困惑lol。 无论如何,CDATA与它有什么关系? 我以前从未使用它,但我应该至少学会它的使用。

PHP解释器只会查找?>标记,并尝试评估它们之间的任何内容。 它并不关心周围的引号。 你需要确保PHP所做的结果是有效的Javascript。

 var foo = ''; 

 var foo = 'This is the content of foo.php.'; 

完成PHP之后。

如果foo.php有任何引号,它可能会变为:

 var foo = 'This is the 'content' of foo.php.'; 

这是无效的Javascript语法。 你需要转义任何可能导致这种无效语法的foo.php字符,例如使用addslashes 。 这可能非常麻烦,所以我建议先寻找替代方案。

您可以使用JSON对值进行编码,这绝对是语法安全的:

 var foo = ; 

在代码中生成代码总是很棘手,尽量不要这样做并坚持使用JSON或XML等语言中立的数据交换格式。

如果您100%确定您的包含中没有任何单引号,则应该没有任何问题。

如果要将其可视化,请从包含的php文件中复制所有生成的代码,然后将其粘贴到append()内的主页面中。 看看它的样子。 这将让您对浏览器的最终结果有所了解。