javascript - jQuery 如何使用 ajax 读取和格式化数据以进行自动完成

标签 javascript jquery ajax autocomplete

我尝试使用 jQuery 实现简单的自动完成。但事实证明,这对我来说并没有那么简单。 我有一个<input type="text" name="test" id="test" />我尝试让它自动完成。

我想使用 PHP 脚本读取我的数据库,该脚本以 JSON(或您推荐的任何形式)返回数据。数据应该是单词列表,没什么复杂的([“abc”,“bcd”,“cde”]);没有其他类别或事物。

为此,我阅读了 API here ,但是我对JS中的匿名函数之类的东西还不太熟悉。

到目前为止我尝试过的:

$(function() {
  function response(){};
  $( "#test" ).autocomplete({
        source: function(request, response(data)){ajaxRequest(request, response)}
    });
});

但是我担心这不起作用。而且我完全不知道ajaxRequest()必须以什么格式返回数据。

有人热心地了解这一点并可以帮助我吗? 我会很高兴!

非常感谢! -Yatekii

最佳答案

您应该将数据传递给响应回调

    $( "#test" ).autocomplete({
        source: function( request, response ) {
            var term = request.term;
            $.getJSON( "url.php", request, function( data, status, xhr ) {
                response( data );
            });
        }
    })

关于javascript - jQuery 如何使用 ajax 读取和格式化数据以进行自动完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15518289/

相关文章:

php - AJAX 表单提交成功处理程序的问题

javascript - 为 jQuery 工具提示加载 AJAX 数据

javascript - 在 node.js 中提供 HTML 文件

javascript - typescript 接口(interface)扩展模拟

javascript - 不确定这个 js 代码在做什么日历脚本

jquery 图像悬停过渡/淡入淡出?

ajax - $.ajax 状态码

javascript - 在表单中绑定(bind)两个选择元素的最佳方法?

jquery - 使用 jQuery 在 Ajax 上使用 reCaptcha

jquery - 如何使用jquery在html表中动态添加新行