javascript - 如何将变量作为属性从 php 传递到 javascript?

标签 javascript php jquery html

我想将一个变量从 php 传递到 HTML 作为“属性”,以便 javascript (jQuery) 可以访问它。

$variable = addslashes(   this is the text, coming from database, which can contain '' ' ' ' ' or "" " " " "" " or even <br><hr> tags   );

HTML:

<img id="clickMe" titleAttr="<?php echo $variable; ?>" />

JS:

$('#clickMe').click(function() {
    alert ($(this).attr('titleAttr'));
});

现在 Firefox 说这是一个错误的 HTML 代码,并且 alert() 显示文本直到第一个 ' 信号(其余被切断)

最佳答案

您需要 htmlspecialchars 而不是 addslashes

在任何情况下,几乎总是有比 addslashes 更好的转义机制,当没有时,addslashes 很少足够,因此您需要编写一个。

addslashes 在向 HTML 中插入数据时特别糟糕,因为 \ 不是 HTML 中的转义字符。

关于javascript - 如何将变量作为属性从 php 传递到 javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22810728/

相关文章:

javascript - 更改 SVG 路径的 X 和 Y 坐标

javascript - 如何在 angularjs 中创建水印指令?

php - 无法通过 jquery 更改表单操作

通过 Linux CLI 执行 PHP

php - 而不是连接表,合并对象 : Is this bad practice?

php - Wordpress:stylesheet.css 仅适用于主页

jquery - 使用 jQuery .change() 将变量传递给 onChange 事件

javascript - TypeScript:替换现有类型

javascript - 在逻辑 block 之前引入新的 If 语句时如何构建代码

javascript - Vuelidate $v 在 Vue 组件中未定义