尝试根据this
实施自动填充功能看起来它很直接,但是我不能让这个用ajax调用。不工作,我的意思是我没有看到下降。 Firebug没有显示错误。
<script type="text/javascript">
var options, a;
jQuery(function(){
options = { serviceUrl:'vendors1.cfm',
delimiter: /(,|;)\s*/,
deferRequestBy: 0,
minChars:2};
a = $('#query').autocomplete(options);
});
</script>
现在vendor1.cfm,返回一个';'分类清单:ABC建筑; ABC建筑; ABC建筑; ABC PLUMBING&amp;电气供应公司等
如何正确使用serviceURL
。我有什么格式输出数据?
答案 0 :(得分:5)
来自开发网页:
为Ajax自动填充提供数据的网页,vendors1.cfm
将收到查询字符串为?query="query string"
的GET请求,并且必须按以下格式返回JSON数据:
{
query:'Li',
suggestions:['Liberia','Libyan Arab Jamahiriya','Liechtenstein','Lithuania'],
data:['LR','LY','LI','LT']
}
query
- 原始查询值suggestions
- 以逗号分隔的建议值数组data (optional)
- 数据数组,包含选择数据时回调函数的值。答案 1 :(得分:0)
您应该返回有效的JSON。 例如如果您在文本字段中键入“Li”,则可以返回:
{
query:'Li',
suggestions:['Liberia','Libyan Arab Jamahiriya','Liechtenstein','Lithuania']
}
分隔符不用于返回的值,但可以使用自动完成功能输入多个值。
如果你接受“,”作为分隔符,它将允许你输入:“荷兰,李”,自动完成将像你输入“李”一样工作