我正在使用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;
}
?>
自动完成工作正常。但是,只是当我开始在输入字段中输入内容时,加载的建议是整个数组。我会得到“Chicago Cubs”,“Boston Red Sox”,“Atlanta Braves”,.....
答案 0 :(得分:0)
使用ie Json在php脚本中呈现输出。 ATM它不是由javascript解析的,只与“,”一起对单个数组元素进行解析。我不认为这就是你想要的。还要注意所需的数据数据结构。
对于工作示例(在客户端,请参阅远程JSONP示例http://jqueryui.com/demos/autocomplete/#remote-jsonp)