加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php – Twitter Typeahead Ajax结果未定义

发布时间:2020-12-13 21:50:46 所属栏目:PHP教程 来源:网络整理
导读:我正在建立一个使用twitter typeahead的自动完成功能,使用对我的php文件的ajax JSON调用来获取一些数据,但它会在下拉结果列表中显示以下内容: 未定义 未定义 未定义 但当我这样做时: alert(data); 我得到了正确的数据显示,但不知何故自动完成列表一直显示
我正在建立一个使用twitter typeahead的自动完成功能,使用对我的php文件的ajax JSON调用来获取一些数据,但它会在下拉结果列表中显示以下内容:

未定义

未定义

未定义

但当我这样做时:

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"]

我希望有人可以对我做错的事情发表一些看法,或者指出我正确的方向.提前致谢!

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

解决方法

我使用source时遇到了类似的问题:我最终使用了remote:
在你的情况下,它会是这样的:

$('.item-name .typeahead').typeahead({
    remote: 'ajaxItems.php?query=%QUERY'
  });

请注意,我在typeahead上删除了null(null,{因为我认为没有必要,但我可能错了.显然,你必须使用$_GET而不是$_POST,但我认为这样更容易.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读