我已经用谷歌搜索并查看了一段时间,但似乎无法弄清楚这一点。我试图满足的唯一要求是返回一个格式正确的 javascript 数组,其中包含 sql 语句的结果。
IE
给定一个查询:
SELECT NUMBERS FROM TABLE
和结果:
NUMBERS
1
2
3
我想最终得到一个像这样的数组
["1","2","3"]
请帮助我了解我哪里出错了
这是我的php代码
<?php
$mysqli = new mysqli("local.host.com", "user", "pass", "db");
$sql = "SELECT DISTINCT NAME FROM table";
$result = $mysqli->query($sql);
while($row = $result->fetch_array())
{
$rows[] = $row['NAME'];
}
echo(json_encode($rows));
$result->close();
/* close connection */
$mysqli->close();
?>
这是我的javascript:
function GetCards()
{
var cardarray = new Array();
//alert('test');
$.getJSON('getcardlist.php', function(data)
{
for(var i=0;i<data.length;i++)
{
cardarray.push(data[i]);
}
//return cardarray;
});
return cardarray;
}
编辑:
更多信息,我正在尝试为 jquery ui 设置一个自动完成列表,这是我为自动完成小部件设置的。
var list = GetCards();
$( "#name" ).autocomplete({
source: list,
minLength: 2
这是我从 chrome 控制台得到的错误
Uncaught TypeError: Cannot read property 'label' of null