PHP/Javascript 用 ' 插入 html和”从 PHP 到 javascript 函数
我在数据库中有 HTML,我想用 Facebox(jquery 弹出窗口)显示它。 我使用下面的 PHP 代码来渲染启动 Facebox 的按钮
$html.="<img onclick='$.facebox(\"".$db_data[html]."\");' src='img.png' />";
我怎样才能正确地转义,以便 Facebox 在 $db_data[html] 中也能得到 ' 和 " ? (例如,如果 html 包含样式?)
I have HTML in a database which I want to show with facebox (jquery popup).
I use the PHP code below to render the button that launches the facebox
$html.="<img onclick='$.facebox(\"".$db_data[html]."\");' src='img.png' />";
How can I escape things properly so that facebox will get also ' and " in $db_data[html]?
(for example if the html includes styles?)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用
json_encode
将字符串正确转换为 JavaScript 兼容字符串,并htmlspecialchars
对它进行编码以便在 HTML 属性值中使用:注意引号样式的使用 ENT_QUOTES 还对用于引用属性值的
'
进行编码。如果您使用"
作为 HTML 属性值,则不需要这样做:Use
json_encode
to convert the string properly to a JavaScript compatible string andhtmlspecialchars
to encode it for the use in an HTML attribute value:Note the use of the quote style ENT_QUOTES to also encode
'
that are used to quote the attribute value. This wouldn’t be necessary if you would use"
for the HTML attribute value instead: