Javascript拆分不识别中间点

时间:2012-10-02 19:54:16

标签: javascript split special-characters

我正在尝试根据中间点分割字符串。出于某种原因,它没有认识到它。我可以使用“管道”字符,所以我知道其他所有工作,但不是中间点。我是否需要逃离中间点?如果是这样,怎么样?

的Javascript

    var sTags = $(this).text();
    // alert(sTags);
    sSplitTags = sTags.split(' | ');
    // Split isn't recognizing the middot
    // var sSplitTags = sTags.split(' · ');
    // var sSplitTags = sTags.split(' · ');
    // var sSplitTags = sTags.split(' · ');
    alert(sSplitTags[0]);

HTML

    <div>Upscale &middot; Gadget</div>
    <div>Expensive · Widget</div>
    <div>Expensive &#183; Widget</div>

提前致谢!

2 个答案:

答案 0 :(得分:4)

' \267 '应该是你想要的。 Javascript对与html / css编码语法不同的特殊字符使用八进制编码。

这是一个有很好查找表的网站:http://www.evotech.net/blog/2007/04/named-html-entities-in-numeric-order/

- 编辑 -

ruakh提出了' \u00B7 '的这个版本,这同样有效。您会在页面上注意到有一个十六进制代码列,而对于中间点,它是B7。在css中你会写\00B7但是在javascript中我们需要通过将小'u'附加到前面而你最终得到\u00B7'来证明这不是八进制。

答案 1 :(得分:0)

当正确声明包含JavaScript代码的文档的字符编码时,代码可以正常工作。例如,当代码以UTF-8编码出现在整个UTF-8编码的HTML文档中并充分声明此编码时,它就可以工作。对于外部JavaScript文件,应使用HTTP标头声明编码。请参阅有关字符编码的W3C文档:http://www.w3.org/International/O-charset.en.php