Solr JavaScript转换器和特殊字符(æ;、ø;、和å;)

Solr JavaScript转换器和特殊字符(æ;、ø;、和å;),javascript,solr,special-characters,Javascript,Solr,Special Characters,我正在使用web服务器运行1.4。在我的data config.xml文件中有一个用JavaScript编写的转换器,如下所示: <script><![CDATA[ function transform(row) { var itemColor = row.get('ItemColor'); if (itemColor == 'SORT' || itemColor == 'BLACK') {

我正在使用web服务器运行1.4。在我的
data config.xml
文件中有一个用JavaScript编写的转换器,如下所示:

    <script><![CDATA[
        function transform(row) {

            var itemColor = row.get('ItemColor');

            if (itemColor == 'SORT' || itemColor == 'BLACK') {
                row.put('ItemColor', 'Sort');
            }

            else if (itemColor == 'RØD' || itemColor == 'RED') {
                row.put('ItemColor', 'Rød');
        }

        return row;
    }
    ]]></script>

基本上,在我将
itemColor
添加到Solr索引之前,我试图用'RØD'替换'RØD'和'RED',用'SORT'替换'SORT'和'BLACK'。(“SORT”在丹麦语中为黑色,“RØD”为红色)

但是由于某些原因,如果部分永远都不是真的,则else-if部分的值为'RØD'。当值为“SORT”或“BLACK”时,更新
itemColor
没有问题。我怀疑这与特殊角色(Æ、Ø和Å)有关。我尝试过使用包含这些字符的颜色,但每次都失败了


解决方案是什么?

您的data-config.xml文件是utf8还是其他文件?您是否尝试过使用unicode转义码?(
'\xD8'
而不是
'Ø'
)?是的-你是对的。我必须这样做才能让它工作。else if(itemColor=='R\xD8D'| | itemColor=='R\xF8d'){row.put('itemColor','R\xF8d');}