我正在使用 jquery 的 ajax 函数从外部 php 文件中获取数据。从 php 文件返回的数据将用于自动完成功能。但是,它不是自动完成函数从 php 文件中的数组中建议每个特定值,而是返回所有这些值。我的 jquery 看起来像这样。
jQuery('input[name=past_team]:radio').click(function(){
$('#shadow').fadeIn('slow');
$('#year').fadeIn('slow');
var year = $('#year').val();
$('#year').change(function () {
$('#shadow').val('');
$.ajax({
type: "POST",
url: "links.php",
data: ({
year: year,
type: "past_team"
}),
success: function(data)
{
var data = [data];
$("#shadow").autocomplete({
source: data
});
}
});
});
});
link.php 文件如下所示:
<?php
session_start();
require_once("functions.php");
connect();
$type = $_POST['type'];
$year = $_POST['year'];
if($type == "past_team")
{
$funk = mysql_query("SELECT * FROM past_season_team_articles WHERE year = '".$year."'")or die(mysql_error());
$count = mysql_num_rows($funk);
$i = 0;
while($row = mysql_fetch_assoc($funk))
{
$name[$i] = $row['team'];
$i++;
}
$data = "";
for($i=0;$i<$count;$i++)
{
if($i != ($count-1))
{
$data .= '"'.$name[$i].'", ';
} else
{
$data .= '"'.$name[$i].'"';
}
}
echo $data;
}
?>
自动完成工作。但是,只是当我开始在输入字段中输入内容时,加载的建议是整个数组。我会得到“芝加哥小熊队”,“波士顿红袜队”,“亚特兰大勇士队”,......