JQuery UI AutoComplete - 无法在输入字段中输入数据

时间:2013-10-24 21:17:54

标签: javascript jquery ajax jquery-ui jquery-ui-autocomplete

我已经将Jquery UI自动完成的标准方法更改为使用POST而不是GET:

$(function () {
    var data = $(this).val();
    var dataString = 'location=' + data;

    $(".suggest_locations").autocomplete({

        source: function (request, response) {
            $.ajax({
                type: "POST",
                url: "ajax.php",
                data: dataString,
                dataType: "json",
                cache: false,
                success: response
            })
        },
        minLength: 1,
        delay: 0,
        autoFocus: true
    });
});

但无论我在输入字段中写什么,“数据”总是空的。

我正在使用名为ajax.php的外部文件从数据库中获取所有已保存的位置,但它会始终显示所有可用位置,因为“数据”不会读取我在输入字段中输入的内容

我真的很感激任何帮助!

1 个答案:

答案 0 :(得分:0)

更改输入字段的值时,不会更新变量数据,但只会更新一次:文档加载时。

使用此选项代替源选项:

source: function(request, response) {
    $.ajax({
        url : 'ajax.php',
        type    : 'post',
        dataType: 'json',
        data    : 'location=' + request.term,
        cache   : false,
        success : function(data) {
            response(data);
        }
    });
}