我已经尝试过我所知道的所有组合,但无法正确使用它!
echo <<<EOF
<a href="javascript:popup('$comments')">Popup!</a>
EOF;
我想将$ comments中包含的字符串传递给弹出窗口,但我似乎无法获得转义字符和连接的正确组合。请帮忙!
TIA
编辑:这是进入我提到的字符串的HTML。
$comments.= "<b>" . $row['comName'] . "</b><br><i>" . $row['comment'] . "</i><br><br>";
答案 0 :(得分:1)
首先需要将字符串转义为有效的Javascript / JSON以保留Javascript语法,然后转义Javascript以保留其嵌入的HTML的语法:
$js = sprintf('javascript:popup(%s)', json_encode($comments));
printf('<a href="%s">Popup!</a>', htmlspecialchars($js));
由于这非常痛苦,您应该尝试使用unobtrusive Javascript,它将Javascript与HTML分开。