2015-07-11 22 views
0

創建混合HTML內容考慮到我要動態地創建此HTML:如何動態地在jQuery的

<li><img src="a"/>some text</li> 

有些文字是一個文本字符串,它是潛在的危險,假設存儲在變量「SOME_TEXT」。

的想法是調用$('<li>').append($('<img>').attr({src:"a"}), ...);

使用$(some_text)是壞主意,因爲它是不安全的。使用text(some_text)不起作用,因爲文本不是元素的唯一子元素。

我不想文本換到<span>

我不想創造/使用進行消毒或轉義字符串函數

+1

你爲什麼不想要消毒文本---我不能想象有任何其他方式由具有安全問題不斷 - 這就是爲什麼PHP,角度和每個別的事情做了sanitize 。所以?你的目標是什麼?爲什麼一個功能現在是一個很好的解決方案? – JoelParke

+1

因爲jQuery有安全處理任意文本的函數(即'text()') –

回答

1

的方法有很多,但可能最簡單的是首先將文本內容添加到li元素,然後預先添加圖像以獲得正確的順序。

$('<li>').text(some_text).prepend($('<img>').attr({src:"a"}), ...);