html 拼写onclick 事件,转义英文单引号和双引号 防止js报错

时间:2022-11-03 17:03:36

使用js 拼html 页面 并添加上onclick   传参数 到前台,可能传的参数 会出现 带有英文双引号或单引号,就可能导致js出问题

在网上找了很多转义的方法,都有点小问题,经过不懈的摸索。找到了解决的办法

记录一下


  并在后台拼html

var name = name.replace(/"/g, '\\"').replace(/'/g, '\\''); //name可能会出现单引号或者双引号,对单引号和双引号进行转义替换,注意:网上
//网上的教程都是说将 双引号替换为  "  ,但是拼成html后,浏览器渲染后并没有转义成功,所以需要 多加两个斜杠。因为js也会再次转义,可能是由于js再次转义,所以转义无效了。后期还需要优化
	  '<a href="javascript:void(0)" title="修改名称"  onclick="editThis('+"'"+name+"'"+','+"'"+row.platformId+"'"+','+"'"+row.modifytime+"'"+')"><i class="iconfont icon-bianji-"></i></a>'        
然后应该就没问题了,我发现如果中间有js处理过,就需要加 \多转义一次, 否则一个斜杠转义就会失去效果,如果发现转义错误,可以试试多加几个斜杠转义试试