可能重複:
HTML formatter/tidy/beautifier for JavaScript如何清理.innerHTML的HTML內容?
我想HTML代碼傳遞給一個div:
myDiv.innerHTML = htmlCode;
它類似於像我試圖用一個IFRAME。問題是,如果html代碼格式不正確(例如缺少</div>
),那麼它會損壞所有頁面。如何清理這些?
可能重複:
HTML formatter/tidy/beautifier for JavaScript如何清理.innerHTML的HTML內容?
我想HTML代碼傳遞給一個div:
myDiv.innerHTML = htmlCode;
它類似於像我試圖用一個IFRAME。問題是,如果html代碼格式不正確(例如缺少</div>
),那麼它會損壞所有頁面。如何清理這些?
請看: google-caja - 編譯製作的第三方HTML,CSS和JavaScript安全嵌入
你可以先用一個DOMParser對象的HTML代碼轉換爲DOM結構。這將解決任何破碎的標記。然後,您可以將生成的DOM結構作爲子項插入到div中。
請注意,從不受信任的源代碼嵌入HTML代碼是非常危險的,因爲它允許Cross Site Scripting攻擊。
修復它的來源。不要補救它。 –