我使用的是官方的Jquery自动完成插件。我有一个包含广告商列表的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
});感谢您的时间和帮助。
发布于 2010-06-30 01:04:06
通过查看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 ]
}
});https://stackoverflow.com/questions/3141887
复制相似问题