日期:2014-05-16  浏览次数:20589 次

Jquery的html方法里包含特殊字符的处理

在使用jquery的html()方法时,有时候里面添加的html代码含有一些特殊字符,需要进行转义。

如下例子:

inst_html = "<a style=color:white' onmouseover = '";
inst_html += "javascript:showme('"+inst.instId+"_"+valId+"');";
inst_html += "'  ";
$("#inst_div_"+valId).html(inst_html);

?如果这样直接写的话,在chrome和FF浏览器下,没有问题,但在IE8下会报错。

解决方法就是将javascript里面的'进行转义改成&#39;,这样就不报错了。

如上例改为:

inst_html = "<a style=color:white' onmouseover = '";
inst_html += "javascript:showme(&#39;"+inst.instId+"_"+valId+"&#39;);";
inst_html += "'  ";
$("#inst_div_"+valId).html(inst_html);

?

部分字符转义如下:

  • ?&符号:"&",?"&amp;"
  • 双引号:"\"",?"&quot;"
  • 小于号:"<",?"&lt;"
  • 大于号:">",?"&gt;"
  • 单引号:"'",?"&#39;"

?