用字符串替换撇号

时间:2015-07-17 15:12:02

标签: javascript jquery

我正在使用phonegap通过WhatsApp分享文章。

按钮的代码如下:

    shareArticle += '<li class="rrssb-whatsapp"><a href="javascript: void(1)" onclick="window.plugins.socialsharing.shareViaWhatsApp(\''+$('.article_title').html().replace(/'/g, "&apos;")+'\', null, \'http://www.myaddress.com/showArticle-'+articleId+'\', function() {console.log(\'share ok\')}, function(errormsg){alert(errormsg)});" class="popup" data-action="share/whatsapp/share">';
    shareArticle += '<span class="rrssb-icon"><!-- Icon in SVG --></span>';
    shareArticle += '</a></li>';

我要问的部分是:

onclick="window.plugins.socialsharing.shareViaWhatsApp(\''+$('.article_title').html().replace(/'/g, "&apos;")+'\', null, \'http://www.myaddress.com/showArticle-'+articleId+'\', function() {console.log(\'share ok\')}, function(errormsg){alert(errormsg)});"

标题中有撇号时按钮不起作用。

最奇怪的是,如果我用&apos;替换&quot;,它就能完美地工作(甚至认为结果是错误的)。

Doe的任何人都有为&apos;失败的理由吗?

2 个答案:

答案 0 :(得分:2)

谢谢大家的支持。

解决方法是将撇号更改为另一个不会破坏字符串的符号。

所以我做的是:

$('.opinion_content_title').html().replace(/'/g, "′")

再次,谢谢大家。

答案 1 :(得分:1)

  

指定的字符引用&apos; (撇号,U + 0027)是在XML 1.0中引入的,但没有出现在HTML中。因此,作者应使用&#39;而不是&apos;在HTML 4用户代理中按预期工作。