2016-02-09 93 views
1

我像這樣在元素屬性中存儲HTML代碼。在屬性中存儲HTML

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

我該如何轉義所有必需的字符才能使這個使用jQuery/Javascript有效?

+1

替換單引號雙引號或由\轉義「\」的字符串。像這樣:https://jsfiddle.net/DinoMyte/c8jzo021/ – DinoMyte

+0

使用像這樣的單引號'

' –

+0

如何在輸入字段中輸入代碼時動態執行此操作?也有必要逃避'<', '>'? – guub

回答

2

使用這種htmlEscape方法

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

這應該給你,可以作爲一個有效的HTML屬性值