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

时间:2014-01-22 22:14:53

标签: javascript php jquery arrays json

嗨,我想让ëéäá这样的特殊字符出现在我的自动填充中。例如,字母ë显示为& #2 3 5; (没有空格)。

我正在创建一个我json_encode的php数组。我可以使用ë(html_entity_decode)和&创建json。 #2 3 5;对象中的(没有空格)。当我用ë创建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>

1 个答案:

答案 0 :(得分:0)

Autocomplete允许您管理元素的渲染。您可以从这一点开始并尝试创建自定义渲染功能。您只需在配置中指定渲染功能,如:

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

您可以console.debug检查项目是否包含带重音的文字。