用于搜索UL列表的搜索框或自动完成文本框
search box or autocomplete text box for search UL list
我需要一个搜索框或自动完成文本框来从列表中搜索指定的值使用JQUERY或JAVASCRIPT。
例如:默认情况下,列表中的所有值都显示在文本框下。
当我在文本框中输入"a"的意思时,就会显示从"a"开始的单词。
<input id="tags" />
<div id="xxx">
<ul id="autocompletes1">
<li><a href="index.html">Acura</a></li>
<li><a href="index.html">Audi</a></li>
<li><a href="index.html">BMW</a></li>
<li><a href="index.html">Cadillac</a></li>
<li><a href="index.html">Chrysler</a></li>
<li><a href="index.html">Dodge</a></li>
<li><a href="index.html">Ferrari</a></li>
</ul>
</div>
此代码将适用于您的UL列表,但您最好使用javascript插件。。。
$('#tags').on('keyup',function(e){
// cache all the tag elements in an array
var tagElems = $('#autocompletes1').children();
// hide all tags
$(tagElems).hide();
for(var i = 0; i < tagElems.length; i++){ // loop through all tagElements
var tag = $(tagElems).eq(i);
if(($(tag).text().toLowerCase()).indexOf($(this).val().toLowerCase()) === 0){
// if element's text value starts with the hint show that tag element
$(tag).show();
}
}
});
Working Example
没有标记选择逻辑。。。
Example with tag selection logic
使用此代码:
$(function() {
var availableTags = [];
$('#autocompletes1 li').each(function(){
availableTags.push($(this).text());
});
$( "#tags" ).autocomplete({
source: availableTags
});
});
FIDDLE演示
注意:必须使用jquery ui
var sources = [];
$('span').each(function(i,ele){
sources.push({'label': $(ele).text(), 'value' : i});
});
$( "#tags" ).autocomplete({
source: sources
});
无序的JSFIDDLE
相关文章:
- 搜索文本文件并附加到表中
- 在网站HTML页面上搜索文本
- 在JavaScript中搜索文本并获取其所有开始和结束索引
- 不显示 jsTree 搜索文本框
- “搜索”文本仅考虑表格中的最后一列
- 突出显示搜索文本引导程序表
- jQuery自动完成下拉列表中的粗体搜索文本字符
- 在文档中搜索文本以删除的文本超过找到它的标签
- JavaScript:获取搜索文本在正文上的滚动位置
- 使用JavaScript搜索文本
- jQuery在多个表中搜索文本,如果找到文本,则单击按钮
- 使用javascript从html中搜索文本
- 使用PowerShell在JavaScript网页上搜索文本字符串
- Javascript Regex exec 在向搜索文本添加属性/引号后冻结
- 具有搜索文本的功能,不能很好地处理标点符号/符号.Jquery/Jquery mobile.
- Javascript打开带有搜索文本的新窗口
- 谷歌语音识别搜索文本问题
- 我们可以使数据列表自动完成以搜索文本和值吗?
- 使搜索文本框输入值不区分大小写
- 在嵌套对象(例如 Backbone.js集合)中搜索文本