使用jquery搜索LI列表
Search LI list with jquery
问候,
我在一个div中有一堆<li>
项,这个div是可滚动的
我想要一个文本框来标记第一个li,其中包含来自文本框和搜索按钮的特定文本。
并且li应该变得可见:(
我不知道如何做到这一点:(
实时演示通过滚动更新
标记
<div id='test'>
<ul>
<li>Text</li>
<li>Something</li>
<li>Hey</li>
<li>der</li>
<li>herp</li>
<li>derp</li>
<li>Testing</li>
</ul>
</div>
JS
$('#searchBtn').click(function(){
var searchString = $('#searchText').val(),
foundLi = $('li:contains("' + searchString + '")');
foundLi.addClass('found');
$('#test').animate({ scrollTop: foundLi.offset().top});
});
我会使用scrollTo插件:http://flesler.blogspot.com/2007/10/jqueryscrollto.html然后做这样的事情(未测试)
$('#thediv').scrollTo( $('li:contains("'+yourtext+'")') );
HTML:
<div style="height: 40px; overflow-y: scroll" id="my_div">
<li>the first li</li>
<li>the second li</li>
<li>the third li</li>
<li>the fourth li</li>
...
</div>
<input type="text" id="my_text_box" />
<input type="submit" id="my_search_button" />
javascript:
$('#my_search_button').click(function(e) {
var my_search = $('#my_text_box').val(); // the text to search for
var $my_div = $('#my_div'); // the div
$my_div.find('li').each(function(idx, elem) {
$elem = $(elem);
if ($elem.text().indexOf(my_search) != -1) { // if it contains your searched text
$elem.show(); // display it ? only if needed, unclear from question
$elem.addClass('highlighted'); // add your class for the highlight
$my_div.scrollTop($elem.position().top); // scroll to it
return false; // stop the loop
}
});
e.preventDefault(); // stop an actual form from being submitted
});
我正在寻找类似的东西:
我网站的访问者应该能够在可点击的位置列表中搜索(查看当地天气报告)。
理想情况下,应该有一个匹配机制:
当访问者开始输入位置的名称时,应该在搜索字段中自动提示该名称。
有这样的代码吗?
看看这个https://github.com/svapreddy/cssListJS.
使用纯CSS和少量JS 实现的搜索功能
相关文章:
- 使用下拉列表筛选列表(ul>li)
- 修复列表的绝对位置(li's隐藏在前两个后面)
- 如何让li项目在这个jQuery列表中滑动和/或淡出视图
- 有角度的自动建议文本排版和html ul li下拉列表
- jQueryUI可排序-从可排序列表中删除li
- 转换UL->li inot为同位素过滤菜单选择的列表
- 对于列表中包含带文本的跨度的每个li,请从该li中删除另一个跨度
- 隐藏/显示li's列表以及if语句和document.write
- 如何以编程方式单击下拉列表中的li
- 根据不同长度的数据属性对无序列表中的 li 进行排序(无 jquery)
- 哪种模式在 gsub 中使用!将有序列表 (li 标记) HTML 字符串替换为订单号
- 如何查找列表项的索引 (ul-li)
- 我有一个数据列表,我将其转换为 Ul 和 li 的列表,现在我希望这个列表在 JSP 中显示为树
- 展开子菜单列表 OL,如果其列表 li 中的任何一个具有活动类
- 如何从 d3 节点层次结构创建 ul-li 列表
- ng-click似乎不适用于以编程方式插入的列表(li)元素
- 有没有更简单的方法可以在一个 UL 中获取 LI 列表编号
- 在 LI 内容上使用 wrapInside,但不对子列表使用
- 我如何瞄准或聚焦当输入被聚焦时激活的下拉列表li
- 量角器无法计数列表(li)中的链接