Php 将希腊字符从MySQL返回到Javascript

Php 将希腊字符从MySQL返回到Javascript,php,jquery,mysql,ajax,Php,Jquery,Mysql,Ajax,我正在尝试创建一个表单,它使用JQuery自动完成从MySQL表中获取值。我对Javascript和AJAX非常陌生,但我已经开始使用它了。当我在输入字段中键入1个字母时,我会得到一个下拉列表,其中包含表中的匹配值。这适用于正常字符a-z、1-9。但是,我还有一个包含以下值的表: 10纳克 100纳克 1微克 最后一个给了我问题,因为它包含一个希腊字符。当我键入“1”时,它应该在下拉菜单中返回所有3个值。相反,它不会返回任何内容。当我键入“10”时,它返回前2个值,如预期的那样。如果我试着输入'

我正在尝试创建一个表单,它使用JQuery自动完成从MySQL表中获取值。我对Javascript和AJAX非常陌生,但我已经开始使用它了。当我在输入字段中键入1个字母时,我会得到一个下拉列表,其中包含表中的匹配值。这适用于正常字符a-z、1-9。但是,我还有一个包含以下值的表:

10纳克 100纳克 1微克 最后一个给了我问题,因为它包含一个希腊字符。当我键入“1”时,它应该在下拉菜单中返回所有3个值。相反,它不会返回任何内容。当我键入“10”时,它返回前2个值,如预期的那样。如果我试着输入'g'和'ng'也是一样的

这是我的Javascript代码:

$(function() {
    $(".ajax_getid_").each(function () {
        (function ($this) {
            $this.autocomplete({
                response: function(event, ui) {
                    try {
                        if (ui.content.length === 0) {
                            $("#"+event.target.id+"-empty-message").text("No results found");
                        } else {
                            $("#"+event.target.id+"-empty-message").empty();
                        }
                    } catch(err) {
                        error = "Error 1: "+err.message;
                        alert(error);
                    }
                },

                source: function(request, response) {
                    try {
                        $.ajax({
                            url: "list_"+$this.attr('id')+".php",
                            dataType: "json",
                            data: {
                                term : request.term
                            },
                            success: function(data) {
                                response(data);
                                console.log(data);
                            }
                        });
                    } catch(err) {
                        error = "Error 2: "+err.message;
                        alert(error);
                    }
                },
                minlength: 1
            });
        })($(this));
    });
});
在四处搜索时,我从数据库中找到了一些关于响应编码的信息。但是由于正常字符的返回没有任何问题,我不确定这是否是问题所在。如果是的话,我也不知道该怎么解决

编辑: 如果我尝试在一个简单的html表中可视化MySQL表,这也不会有问题。。。
当我尝试将响应打印到控制台Google Chrome时,我得到以下错误:Uncaught TypeError:无法读取null的属性“label”

尝试对您的请求进行编码,请参见:。所以


那没有任何效果。我认为问题更多的是回应而不是请求。。。
...
dataType: "json",
    data: {
        term : encodeURI(request.term)
    },
....