我有一个简单的脚本,正在寻找标题匹配时执行函数的标题。我遇到了版权和注册商标等特殊字符的问题。
var isDisclosure = $('.disclosure-container h3').html();
if ( isDisclosure == "Awesome Product<sup>®</sup> Disclosures" ) {
alert('zomg');
}
html在firebug中看起来像这样:
<h3 class="inline">
Awesome Product
<sup>®</sup>
Disclosures
</h3>
在查看源代码时,html看起来像这样......
<h3 class="inline">Awesome Product<sup>®</sup> Disclosures</h3>
因此,当我将该html添加到if语句时,我会得到一个额外的额外字符,但它不起作用......就像这样......
if ( isDisclosure == "Awesome Product<sup>©</sup> Disclosures" )
我非常乐意在最后搜索带有通配符的“Awesome Product”。
答案 0 :(得分:1)
您可以使用正则表达式测试进行部分匹配
if(/Awesome\sProduct<sup>.+</sup>\sDisclosures/i.test(isDisclosure))
或索引
if(isDisclosure.indexOf("Awesome Product") >= 0)
或者您可以从隐藏的div中引用html。
<div id="refs" style="display:none;">
<h3 id="awesome">
Awesome Product
<sup>®</sup>
Disclosures
</h3>
</div>
if(isDisclosure == $("#refs #awesome").html())