在这段代码中,当basis
变量只有一个引号时,类似"Father's Day"
之类的东西,我就会遇到问题,因为标签在遇到单引号时被关闭了。 / p>
'success' : function(data) {
div.innerHTML = '<a href=\'javascript:blockConcept("'+tld+'","'+basis+'","'+admin_id+'","'+url+'")\' class="block">Block concept for '+ tld+'</a>'
}
答案 0 :(得分:3)
您可以使用basis
转义replace
(和其他人)中的单引号:
... + basis.replace(/'/g, "\\'") + ...
...但是这会让你对其他问题持开放态度(例如,换行符)。您可以考虑在元素上输出tld
,basis
等属性,然后调用blockConcept
传入this
,以便它可以从元素中检索信息。或者传递一个用JSON.stringify
编码的参数(你可能需要一个垫片,并不是所有的浏览器都有原生的)。