以下ajax调用
var whatever = [];
$.ajax({
url: "myScript.php",
success: function (response) {
whatever = response.split(",");
}
});
正在生成:
"ABC,DEF,GHI,JKL,"
我想在JQuery自动完成中使用哪些值:
$('#conta').autocomplete({
source:whatever
});
但是,自动完成弹出窗口中不会显示任何内容。
如果我直接在JS中键入值,它可以完美地运行:
var whatever=[
"ABC",
"DEF","GHI","JKL"
];
但是为什么PHP生成时它不起作用?
答案 0 :(得分:0)
在您的源代码中,您的php数组需要包含带有"标签的行#34;像这样的关键:
foreach($rows as $key)
{
$results[] = array('label' => ($key['nome']));
}
echo json_encode($results);
此外,如果您的数据库行未在utf8中编码,则需要对它们进行编码,否则它将为" null":
$results[] = array('label' => utf8_encode($key['nome']));
更新:
myScript.php:
...
foreach($rows as $key)
{
$results[] = array('label' => ($key['nome']));
}
echo json_encode($results);
使用Javascript:
$(function(){
$('#conta').autocomplete({
source:"myScript.php"
});
});
答案 1 :(得分:0)
尝试放$('#conta').autocomplete({
source:whatever
});
成功回调函数