我们在试图让一个非常简单的脚本工作(以及其他人似乎都成功)的尝试中投入了大量时间。最后,我们希望使用JQuery创建一个自动提示文本框,将选定文本的值写入隐藏字段,但这个问题与此无关,因为即使是第一步失败了(但工作示例代码非常受欢迎)。JQuery自动完成:formatItem不起作用
由于一些不清楚的原因,formatItem(和其他格式化函数)没有执行。我们有什么误解?
任何帮助,高度赞赏。
下面的代码(剥去不需要的例子任何东西):
<html>
<head>
<title>Why o why?</title>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.1/jquery-ui.min.js"></script>
<script type="text/javascript">
$(function() {
var s = ["a", "b", "ab"];
$("#txtSearch").autocomplete({
source: s,
formatItem: function(row, i, n) { return "whatever" },
minLength: 1
});
});
</script>
</head>
<body>
Search <input id="txtSearch" type="text" />
</body>
</html>
自动提示功能,这样在任何浏览器中工作,但没有浏览器触发formatItem。
你好,不完全确定这个formatItem应该如何触发 - 这不是jQueryUI的自动完成事件之一。 formatItem应该做什么?可能您需要触发的事件是“开放”,当出现建议框时会触发事件。如果我错过了这一点,请提供更多详细信息。谢谢! – lnrbob 2010-09-02 18:35:25
正如Floyd Pink在下面写道的,我们一直在错误的轨道上,将旧插件与新的捆绑版本混淆。 'formatItem'应该格式化建议列表,但另一个更新的方法也会这样做。不管怎么说,还是要谢谢你!! – Olaf 2010-09-02 21:30:51