无论如何要阻止innerHTML / $ .html转换转义字符?

时间:2014-09-05 20:16:31

标签: jquery escaping innerhtml

长时间潜伏,第一次问问。

我想知道是否还有使innerHTML / jquery .html不能转换转义字符。

更具体地说......我正在努力做到以下几点:

$("#myid").html('<a href="javascript:;" onclick="myfunction(\''+a_lot_of_text+'\');" </a>')

现在,a_lot_of_text可能已经转义了引号,双引号等...但是,$ .html会将&quot;转换为",这当然会搞砸代码。有没有合理的&#34;插入我传递给id的确切字符串的方法?

1 个答案:

答案 0 :(得分:0)

是。您可以改用innerText或jQuery的text()方法。

$('elem').text('&quot;');

JSFiddle demo

此外,当您使用jQuery时,无需使用内联JavaScript。用jQuery替换你的onclick处理程序:

$('#myid').on('click', function() {
    // ...
});