我正在使用官方的Jquery Autocomplete插件。我有一个带有广告商列表的ODBC数据库。我目前有一个输入框,用户键入部分名称,我成功返回部分匹配列表。我遇到的问题是我不明白如何返回广告客户的名称和ID。我假设我想使用Jquery函数来调整隐藏字段的值,以便在检索后存储ID。
php文件,用于返回需要修改的广告商名称以返回UsageNumber:
$sql = "SELECT DISTINCT tNAdvertisors.UserName, tNAdvertisors.UsageNumber
FROM tNAdvertisors
WHERE (((tNAdvertisors.UserName) Like '$term%'));";
$rs=odbc_exec($conn,$sql);
$a = array();
while (odbc_fetch_row($rs)) {
$a[] = htmlentities(odbc_result($rs,"UserName"));
}
echo json_encode($a);
自动完成的当前jquery代码需要修改以包含处理ID的函数吗?
$("#single").autocomplete({
source: "ajaxSearchForAdvertiser.php",
minLength: 3
});
感谢您的时间和帮助。
答案 0 :(得分:0)
通过查看autocomplete demo page图片搜索,您可以尝试将重要信息组合成一个字符串,比如ID与数据库中的广告客户名称(对不起,我不能帮忙,因为我没有知道php& SQL就好了):
1234#Exxon
2345#BP
3456#Shell
然后自动完成脚本将是这样的:
$("#imageSearch").autocomplete("images.php", {
formatItem: function(data, i, n, value) {
return value.split("#")[1]; // returns just the name for display in the input box
},
formatResult: function(data, value) {
var result = value.split('#');
return [ result[0], result[1] ]; // returns [ ID, name ]
}
});