【发布时间】:2011-05-20 00:33:25
【问题描述】:
我有这段代码是从 php 页面的 jquery Data 对象中捕获的。
echo "
var $d = $('<div/>', {
id: 'hi' + $('#textResp').children().length,
class: 'eventdiv',
html: 'hello'
}).hide().fadeIn(3000);
$('#textResp').append($d)
";
问题是,'s 没有被转义。我曾尝试使用 /' 转义,但出现错误。我确定我做错了,有谁知道在哪里放 /' 而不是 '?
【问题讨论】:
-
等等,为什么会出错呢?你有 ' 里面的 ",它不应该做任何事情......
-
可怕的事情可能正在发生,因为 PHP 将所有这些 $ 符号作为 PHP 变量进行插值,这会完全搞砸你的输出。使用单引号回显。根据我的经验,将 PHP 变量放入其中的最简单和最安全的方法是使用
json_encode。 -
为什么没有人建议
?> whatever <??
标签: php javascript jquery ajax escaping