JavaScript的引号嵌套时单引号和双引号是交替使用的,但是到第三层就会出现解析错误如:
'<a href="javascript: do('something');">'
这种用情况下something前的单引号会成为整个字符串的结束,解决方式:
'<a href="javascript: do(\'something\');">'
转义单引号即可,但是转义时不可用双引号:
'<a href="javascript: do(\"something\");">'
这样的话解析时,something前的双引号会被作为href属性的结束。
所以转义时也必须交替进行。
另外也可以把引号用HTML代码来代替引号
当然最好的方式是避免使用多重嵌套
function doSth(){
do("something");
}
'<a href="javascript: doSth();">'