0

字符串中的单引号正在创建执行 _gaq.push 函数的问题现在我想替换文本字符串中的单引号,例如 Replace("'", "\'")。

<a onclick="_gaq.push(['_trackEvent', 'XYZ', 'ABC', 'Music and fun daddy's child']);"  href="www.xyz.com" target="_blank">
Deal with daddy
</a>

有人可以帮我编写一个替换 javascript 内联函数并将其作为参数传递给 _gaq.push 函数。

更新:- 我在一个不允许再定义变量的内容管理系统支持的脚本语言中使用此脚本。

所以我需要在单个 java 脚本中的所有内容,在 onclick 时调用

4

2 回答 2

0

在将'Music and fun daddy's child'值传递给锚标记onclick函数之前,您必须获取该值并使用该.indexOf()方法查找是否有任何单引号 ( ')。\'如果发现您必须使用该.replace()方法替换它们

IE

var str = "Music and fun daddy's child";
var n = str.indexOf("'");
if(n >= 0){
var n = str.replace("'","\\'");
  alert(n);
}

然后将该值传递给函数

<a onclick="_gaq.push(['_trackEvent', 'XYZ', 'ABC', '"+n+"']);"  href="www.xyz.com" target="_blank">
   Deal with daddy
</a>
于 2013-08-05T13:29:01.667 回答
0

真正做到这一点的唯一方法是在 onclick 之外设置一个变量。

var description = "Music and fun daddy's child".replace("'", "\'");

<a onclick="_gaq.push(['_trackEvent', 'XYZ', 'ABC', '" + description + "']);"  href="www.xyz.com" target="_blank">
Deal with daddy
</a>
于 2013-08-05T13:26:01.077 回答