我想在我的网站上添加一个自动完成系统,我搜索了一段时间,但我找不到我要找的东西,很难解释。
我想要一个直接在其内部自动完成输入的系统。谷歌使用“一般”自动完成加上这个,但似乎没有其他人在这样的事情上工作过!
简单,合乎逻辑的......如果不存在,怎么可能做这样的事情呢?
这是谷歌系统:
答案 0 :(得分:2)
解决方案可能是在输入框上方放置一个带有灰色文本的div,它会显示文本框中当前文本的第一个自动完成选项之间的差异。
按下按键 - 任何常见的自动完成功能都会生成匹配项目列表。 取第一个并在他身上设置一个选定的样式(使用.addClass()), 将文本框内容与第一个项目内容区分开来,并将其放在灰色div上。
我找到了一个有趣的扩展,默认选择第一个选项:
$( el ).autocomplete({
selectFirst: true
});
您可以使用它并进行更改以满足您的需求。例如,您可以在此代码中添加'jquery.ui.autocomplete.selectFirst.js'文件:
if (menu.element.children().first().length == 1)
{
$("#autocomplete").val(menu.element.children().first()[0].childNodes[0].childNodes[0].data);
}
它不仅会选择,而且会将其插入到文本框中(注意:我只是举例说明了你可以做什么,这段代码本身就不够了。)