嗨,有人可以看看这个,让我知道我哪里出错了.我想让jQuery UI自动完成工作.这是我的代码:
这是search.PHP
include "db_connect.PHP";
$search = $_GET['term'];
$result = MysqL_query("SELECT Title FROM `movie` WHERE `Title` LIKE '%$search%' ORDER BY Title ASC") or die('Something went wrong');
$rows = array();
while ($row = MysqL_fetch_assoc($result)){
$rows[] = $row;
}
print json_encode($rows);
?>
这是我的javascript内联脚本
这就是’自动’div
最佳答案
看看jquery ui autocomplete documentation.您要返回的JSON与自动完成所需的内容不匹配.您返回的对象必须具有名为label或value(或两者)的属性.
您可以尝试以下选项:
选项1:更改返回的JSON
[{"label":"Sin City"}]
从示例中它似乎也使用id属性.我相信以上是自动完成显示值列表的最低要求.我想你也可以返回一个字符串数组,它将以与上面完全相同的方式呈现它.
[ "Sin City","Etc" ]
选项2:更改私有_render功能
更改自动完成的private _renderItem函数以使用自定义属性,如此autocomplete example(未经测试)中所示:
$( "#project" ).autocomplete({
source: "./search.PHP",minLength: 3
})
.data( "autocomplete" )._renderItem = function( ul,item ) {
return $( "
这是一个更灵活但更丑陋的imho.
原文链接:/jquery/428901.html