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"] 我希望有人可以对我做错的事情发表一些看法,或者指出我正确的方向.提前致谢! 编辑 解决方法
我使用source时遇到了类似的问题:我最终使用了remote:
在你的情况下,它会是这样的: $('.item-name .typeahead').typeahead({ remote: 'ajaxItems.php?query=%QUERY' }); 请注意,我在typeahead上删除了null(null,{因为我认为没有必要,但我可能错了.显然,你必须使用$_GET而不是$_POST,但我认为这样更容易. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |