0

如果代码是用 Javascript 编写的(在<script>和之间</script>,但我遇到了这样的问题(在 PHP 中使用 echo 渲染动态内容),这很简单:

echo "<label onclick='showContent(\"".$content."\")'>Click me</label>"

我也试过这个:

echo '<label onclick="showContent("'.$content.'")">Click me</label>'

问题是它$content可以包含许多字符,例如 "(双引号)、'(单引号)......通常,它包含 HTML 代码。

如果是一个普通的句子,上面的代码会很好,它会渲染一个“点击我”的标签,我可以点击它来运行函数showContent(),但是如果它包含 HTML 代码,它可以渲染标签但是我不能showContent()当我点击它时运行该功能。我认为这里的引号有问题。我尝试用 " or \" 和 ' or \' 替换 $content 中的所有单引号和双引号,但它仍然不起作用,即使在某些情况下,'Click me' 的标签也无法正确呈现,而是其中它几乎向我展示了背后的代码。

我真的被困在这个问题上(已经好几个小时了),请给我一个解决方案。您的帮助将不胜感激!

谢谢!

4

1 回答 1

0

尝试这个:

echo '<label onclick="showContent('.$content.')">Click me</label>'
于 2012-12-04T17:14:17.140 回答