本文实例讲述了jQuery实现的简单前端搜索功能。分享给大家供大家参考,具体如下:
html代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>工程轻量化与可靠性技术实验室</title>
</head>
<body>
<div class="content-right">
<input type="text"><input type="submit" value="搜索">
<h4>应用流体学</h4>
<ul id="content_news_list">
<li><span>2015-7-8</span><a href="">这里是文章的标题1</a></li>
<li><span>2015-7-8</span><a href="">这里是文章的标题2</a></li>
<li><span>2015-7-8</span><a href="">这里是文章的标题3</a></li>
<li><span>2015-7-8</span><a href="">这里是文章的标题4</a></li>
<li><span>2015-7-8</span><a href="">这里是文章的标题5</a></li>
<li><span>2015-7-8</span><a href="">这里是文章的标题6</a></li>
<li><span>2015-7-8</span><a href="">这里是文章的标题6</a></li>
<li><span>2015-7-8</span><a href="">这里是文章的标题6</a></li>
<li><span>2015-7-8</span><a href="">这里是文章的标题6</a></li>
<li><span>2015-7-8</span><a href="">这里是文章的标题4</a></li>
</ul>
</div>
</body>
jQuery代码:
<script type="text/javascript">
$(function(){
$("input[type=text]").change(function () {
var searchText = $(this).val();//获取输入的搜索内容
var $searchLi = "";//预备对象,用于存储匹配出的li
if (searchText != "") {
//获取所有匹配的li
$searchLi = $("#content_news_list").find('a:contains('+ searchText +')').parent();
//将内容清空
$("#content_news_list").html("");
}
//将获取的元素追加到列表中
$("#content_news_list").html($searchLi).clone();
//判断搜索内容是否有效,若无效,输出not find
if ($searchLi.length <= 0) {
$("#content_news_list").html("<li>not find</li>")
}
})
$("input[type=submit]").click(function () {
$("searchText").change();
})
})
</script>
通过关键字检索列表中的元素,并将其添加到ul中。
其中$(':contains(text)')
获取包含指定字符的元素,该字符串可以是直接包含在元素中的文本,或者被包含于子元素中。
此方法中就是通过判断所获取的元素知否包含所搜索的字符,来实现简单的检索功能。
但是却存在兼容问题,无法兼容IE,在获取元素parent()
时无法将内容写入列表中。
更多关于jQuery相关内容感兴趣的读者可查看本站专题:《jQuery表格(table)操作技巧汇总》、《jQuery切换特效与技巧总结》、《jQuery扩展技巧总结》、《jQuery常用插件及用法总结》、《jQuery拖拽特效与技巧总结》、《jquery中Ajax用法总结》、《jQuery常见经典特效汇总》、《jQuery动画与特效用法总结》及《jquery选择器用法总结》
希望本文所述对大家jQuery程序设计有所帮助。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。