首先我们应该知道引号导致的问题主要是参数不正常的截取,因为参数中传递的引号可能会与前边包括方法名的引号遥相呼应,导致问题,例如
onlick="show(你是"哈哈")"
这样就导致错误的发生了,这些参数往往是动态注入的,比如freemarker
这些模板引擎。
解决这个问题的操作还是需要用到转义\
,让html不解析他们。
这里以Freemarker
做例子
onclick="showMsg('${datas.QUERY_SQL?replace("\'","\\'")}')"
这里将字符串中可能存在的
'
转换为\'
,
网友评论