本文主要介紹了jQuery實現的簡單前端搜尋功能,涉及jQuery事件回應與頁面元素遍歷、匹配、動態設定等相關操作技巧,需要的朋友可以參考下,希望能幫助到大家。
html程式碼:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>工程轻量化与可靠性技术实验室</title> </head> <body> <p class="content-right"> <input type="text"><input type="submit" value="搜索"> <h3>应用流体学</h3> <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> </p> </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簡單前端搜尋功能實作方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!