【发布时间】:2014-01-14 03:19:41
【问题描述】:
我正在使用 devbridge jquery 自动完成插件来创建自动完成搜索。除了 onSelect 部分,我已经能够让它工作。
我正在返回正确的 JSON 编码数据(见下文 - 从 firebug 复制)
{"query":"pa",
"suggestions":["Acer palmatum 'Bloodgood'","Quercus palustris","Euonymous elata 'Compactus'", "Parthenocissus tricuspidata"],
"data":[4,5,7,10]}
如上所述,一切正常,所有建议都会显示并且可以选择等等,但是当我选择一个项目时,会弹出警报消息
you selected: undefined, null
查询代码
$("#query").autocomplete({
serviceUrl:'includes/search.php',
width:350,
minChars:2,
onSelect: function(suggestion){ alert('You selected: ' + suggestion.suggestions + ', ' + suggestion.data); }
});
最后,PHP 代码
include ("connect.inc.php");
$term = trim(strip_tags($_GET['query']));
$term = mysql_real_escape_string($term);
$qstring = "SELECT botanicalName, plantID FROM plants WHERE botanicalName LIKE '%$term%'";
$result = mysql_query($qstring);
$reply = array();
$reply['query'] = $term;
$reply['suggestions'] = array();
$reply['data'] = array();
while ($row = mysql_fetch_array($result)){
$reply['suggestions'][]=htmlentities(stripslashes($row['botanicalName']));
$reply['data'][]=(int)$row['plantID'];
}
echo json_encode($reply);
一如既往地提前感谢。
【问题讨论】:
标签: jquery json autocomplete