单引号内的单引号会导致错误

时间:2014-11-15 08:37:56

标签: javascript jquery

我有这段代码:

<span onmouseout="tooltip.hide();" onmouseover="tooltip.show('Hello. This is a simple tooltip, I'm here if you need me, we've been away for some time.');" class="hotspot">test link</span>

问题是单引号'导致工具提示不显示...所以我的意思是如果文本包含'工具提示将不会显示...因为所有文本都是已经在单引号内......

有人可以帮我解决这个问题吗?

3 个答案:

答案 0 :(得分:1)

尝试将工具提示文本设置为var,然后使用&apos;

对单引号进行替换
var tooltip = tooltip.replace(/'/g, "&apos;");

答案 1 :(得分:0)

我自己解决了这个问题。

所以我只是在str_replace函数中替换了'to \'的每个实例:)

WAS:

$desc = str_replace('"', "",  preg_replace('/(\s\s+|\t|\n)/', ' ', JFilterOutput::cleanText($regs[0]))); 

现在:

$desc = str_replace("'", "\\'",  preg_replace('/(\s\s+|\t|\n)/', ' ', JFilterOutput::cleanText($regs[0]))); 

答案 2 :(得分:0)

对HTML中的特殊字符使用&rsquo;

<span onmouseout="tooltip.hide();" onmouseover="tooltip.show('Hello. This is a simple tooltip, I&rsquo;m here if you need me, we&rsquo;ve been away for some time.');" class="hotspot">test link</span>
  

我使用alert()创建了工作演示,您可以运行此代码段:)

&#13;
&#13;
<span onmouseover="alert('Hello. This is a simple tooltip, I&rsquo;m here if you need me, we&rsquo;ve been away for some time.');"
class="hotspot">test link</span>
&#13;
&#13;
&#13;