gpt4 book ai didi

php - Twitter Typeahead Ajax 结果未定义

转载 作者:可可西里 更新时间:2023-11-01 00:21:20 24 4
gpt4 key购买 nike

我正在使用 ajax JSON 调用我的 PHP 文件来使用 Twitter typeahead 构建自动完成功能以获取一些数据,但它一直在下拉结果列表中显示以下内容:

未定义

未定义

未定义

但是当我这样做的时候:

alert(data); 

我显示了正确的数据,但不知何故自动完成列表一直显示未定义,我已经阅读并尝试了 StackOverflow 上的一些文章,但我似乎无法让它工作。

我必须遵循 jquery 代码:

      $('.item-name .typeahead').typeahead(null,{
source: function (query, process) {
$.ajax({
url: 'ajaxItems.php',
type: 'POST',
dataType: 'JSON',
data: 'query=' + query,
success: function(data) {
// alert(data);
process(data);
}
});
}
});

我的 ajaxItems.php 有以下用于测试目的的代码:

<?PHP
$results = array();

$results[] = 'jeans';
$results[] = 'sweater';

$json = json_encode($results);
print_r($json);
?>

JSON输出如下:

["jeans","sweater"]

我希望有人能指出我做错了什么或指出正确的方向。

编辑我正在使用以下预输入文件: http://twitter.github.io/typeahead.js/releases/latest/typeahead.bundle.js

最佳答案

我遇到了完全相同的问题。要修复它,我必须返回一个包含键/值对的数组,键值是这样的:

[{'value': 'first', 'value': 'second', 'value': 'third'}]

我不认为 typeahead文档说得很清楚,但我相信是 displayKey 选项默认设置为“值”。

关于php - Twitter Typeahead Ajax 结果未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21574391/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com