Javascript 如何在jQuery自动完成UI中显示特殊字符?

Javascript 如何在jQuery自动完成UI中显示特殊字符?,javascript,php,jquery,arrays,json,Javascript,Php,Jquery,Arrays,Json,嗨,我正试图让一些特殊的角色,比如艾哈拉,出现在我的自动完成中。例如,字母ë显示为&2 3 5;没有空间 我正在创建一个我用json_编码的php数组。我可以用html实体解码和&25;没有对象中的空格。当我用ë创建json对象时,它不会显示在自动完成中 我的自动完成功能如下所示: <script> $(document).ready(function() { $(function() { <?php echo "var availableCusto

嗨,我正试图让一些特殊的角色,比如艾哈拉,出现在我的自动完成中。例如,字母ë显示为&2 3 5;没有空间

我正在创建一个我用json_编码的php数组。我可以用html实体解码和&25;没有对象中的空格。当我用ë创建json对象时,它不会显示在自动完成中

我的自动完成功能如下所示:

<script>
    $(document).ready(function() {
     $(function() {
     <?php echo "var availableCustomers = " . $this->searchCustomer . ";\n"; ?>
     $( "#customerAutocomplete" ).autocomplete({
     delay: 0,
     source: availableCustomers,
     select: function(event, ui) {
        window.location.href = '/customer/look-customer/deb/' + ui.item.deb;
         }
      });
     });        
    });
</script>
“自动完成”允许您管理元素的渲染。您可以从这一点开始,尝试创建自定义渲染函数。您只需在配置中指定渲染函数,如:

$( "#customerAutocomplete" ).autocomplete({
    ... 
    _renderItem: function( ul, item ) {
        return $("<li>")
        .attr("data-value", item.value)
        .append($("<a>").html(item.label))
        .appendTo(ul);
    },
    ...
});

您可以对该项进行console.debug,以检查它是否包含带重音的文本。

您必须重写render方法,以便它使用.html而不是.text。@KevinB谢谢。但是如何将该数组呈现为.html呢?我一直在寻找它,但没能很快找到它,它肯定在之前的某个地方被记录下来。这里有一个它工作的演示,