【问题标题】:Storing HTML Within Attribute在属性中存储 HTML
【发布时间】:2016-02-09 18:10:05
【问题描述】:

我将 HTML 代码存储在这样的元素属性中。

<div data-html-code="<iframe width="560" height="315" src="https://www.youtube.com/embed/sNhhvQGsMEc" frameborder="0" allowfullscreen></iframe>"></div>

如何使用 jQuery/Javascript 转义所有必要的字符以使其有效?

【问题讨论】:

  • 用单引号替换双引号或用\"\"转义它们。像这样:jsfiddle.net/DinoMyte/c8jzo021
  • &lt;div data-html-code='&lt;iframe width="560" height="315" src="https://www.youtube.com/embed/sNhhvQGsMEc" frameborder="0" allowfullscreen&gt;&lt;/iframe&gt;'&gt;&lt;/div&gt;这样使用单引号
  • 在输入字段中输入代码时,如何动态执行此操作?是否也需要转义“”?

标签: javascript jquery escaping character


【解决方案1】:

使用这个htmlEscape 方法

function htmlEscape(str) {
    return String(str)
            .replace(/&/g, '&amp;')
            .replace(/"/g, '&quot;')
            .replace(/'/g, '&#39;')
            .replace(/</g, '&lt;')
            .replace(/>/g, '&gt;');
}

这应该给你一个可以用作有效 html 属性值的字符串

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-07-18
    • 2012-01-22
    • 1970-01-01
    • 2011-12-11
    • 2019-04-04
    • 1970-01-01
    • 2013-07-09
    • 2014-10-17
    相关资源
    最近更新 更多