jquery实现静态搜索功能(可输入搜索文字)


Posted in jQuery onMarch 28, 2017

效果图:

jquery实现静态搜索功能(可输入搜索文字)

代码如下:

<!DOCTYPE html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>jquery实现静态搜索功能</title>
 <!-- 最新版本的 Bootstrap 核心 CSS 文件 -->
 <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="external nofollow" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous">
 <!-- 可选的 Bootstrap 主题文件(一般不用引入) -->
 <link rel="stylesheet" href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" rel="external nofollow" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous">
 <!-- jQuery (necessary for Bootstrap's JavaScript plugins) -->
 <script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.min.js"></script>
 <!-- 最新的 Bootstrap 核心 JavaScript 文件 -->
 <script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js" integrity="sha384-Tc5IQib027qvyjSMfHjOMaLkfuWVxZxUPnCJA7l2mCWNIpG9mGCD8wGNIcPD7Txa" crossorigin="anonymous"></script>
 <style>
 .navbar-collapse {
 padding: 0;
 }
 .alert {
 margin: 20px;
 }
 .input-group select.form-control:last-child {
 border-top-left-radius: 4px;
 border-bottom-left-radius: 4px;
 margin-right: -1px;
 }
 .tab-content{
 padding-top: 20px;
 }
 </style>
 </head>
 <body>
 <div class="container">
 <p> </p>
 <div class="bs-example bs-example-tabs" data-example-id="togglable-tabs">
 <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
  <ul id="myTabs" class="nav navbar-nav nav-pills" role="tablist">
  <li role="presentation" class="active">
  <a href="#first" rel="external nofollow" role="tab" id="first-tab" data-toggle="tab" aria-controls="first" aria-expanded="true">克利夫兰 骑士</a>
  </li>
  <li role="presentation" class="">
  <a href="#second" rel="external nofollow" role="tab" id="second-tab" data-toggle="tab" aria-controls="second" aria-expanded="false">金州 勇士</a>
  </li>
  <li role="presentation" class="">
  <a href="#third" rel="external nofollow" role="tab" id="third-tab" data-toggle="tab" aria-controls="third" aria-expanded="false">波士顿 凯尔特人</a>
  </li>
  <li role="presentation" class="">
  <a href="#fouth" rel="external nofollow" role="tab" id="fouth-tab" data-toggle="tab" aria-controls="fouth" aria-expanded="false">休斯顿 火箭</a>
  </li>
  <li role="presentation" class="hidden">
  <a href="#search" rel="external nofollow" role="tab" id="search-tab" data-toggle="tab" aria-controls="search" aria-expanded="false">搜索结果tab隐藏</a>
  </li>
  </ul>
  <form class="navbar-form navbar-right">
  <div class="form-group">
  <div class="input-group">
  <div class="input-group-btn">
   <select class="form-control" id="searchSelect">
   <option value="all" selected="selected">全部</option>
   <option value="name">姓名</option>
   <option value="position">位置</option>
   <option value="about">介绍</option>
   </select>
  </div>
  <input type="text" id="searchText" class="form-control" placeholder="搜索内容">
  </div>
  </div>
  <button type="button" class="btn btn-default" id="searchBth">搜索</button>
  </form>
 </div>
 <div id="myTabContent" class="tab-content">
  <div role="tabpanel" class="tab-pane fade active in" id="first" aria-labelledby="first-tab">
  <table class="table table-bordered table-striped">
  <thead>
  <tr>
   <th>号码</th>
   <th>姓名</th>
   <th>位置</th>
   <th>身高</th>
   <th>体重</th>
   <th>介绍</th>
  </tr>
  </thead>
  <tbody>
  <tr>
   <td>23</td>
   <td>勒布朗-詹姆斯</td>
   <td>小前锋</td>
   <td>203CM</td>
   <td>113KG</td>
   <td>四届NBA最有价值球员奖</td>
  </tr>
  <tr>
   <td>2</td>
   <td>凯尔-欧文</td>
   <td>控球后卫</td>
   <td>191CM</td>
   <td>88KG</td>
   <td>15-16赛季NBA总冠军</td>
  </tr>
  <tr>
   <td>0</td>
   <td>凯文-乐福</td>
   <td>大前锋/中锋</td>
   <td>208CM</td>
   <td>110KG</td>
   <td>15-16赛季获得NBA总冠军</td>
  </tr>
  <tr>
   <td>13</td>
   <td>特里斯坦-汤普森</td>
   <td>大前锋</td>
   <td>206CM</td>
   <td>103KG</td>
   <td>擅长拼抢进攻篮板球</td>
  </tr>
  <tr>
   <td>5</td>
   <td>J.R.史密斯</td>
   <td>得分后卫</td>
   <td>198CM</td>
   <td>102KG</td>
   <td>15-16赛季NBA总冠军</td>
  </tr>
  </tbody>
  </table>
  </div>
  <div role="tabpanel" class="tab-pane fade" id="second" aria-labelledby="second-tab">
  <table class="table table-bordered table-striped">
  <thead>
  <tr>
   <th>号码</th>
   <th>姓名</th>
   <th>位置</th>
   <th>身高</th>
   <th>体重</th>
   <th>介绍</th>
  </tr>
  </thead>
  <tbody>
  <tr>
   <td>30</td>
   <td>斯蒂芬-库里</td>
   <td>控球后卫</td>
   <td>191CM</td>
   <td>83.9KG</td>
   <td>两届NBA最有价值球员奖 三分精准</td>
  </tr>
  <tr>
   <td>11</td>
   <td>克莱-汤普森</td>
   <td>得分后卫</td>
   <td>201CM</td>
   <td>93KG</td>
   <td>14-15赛季NBA总冠军</td>
  </tr>
  <tr>
   <td>35</td>
   <td>凯文-杜兰特</td>
   <td>小前锋/大前锋</td>
   <td>211CM</td>
   <td>106.6KG</td>
   <td>得分手段多样投篮精准</td>
  </tr>
  <tr>
   <td>23</td>
   <td>德雷蒙德-格林</td>
   <td>前锋</td>
   <td>201CM</td>
   <td>104KG</td>
   <td>顶级锋线防守者</td>
  </tr>
  <tr>
   <td>9</td>
   <td>安德鲁-伊格达拉</td>
   <td>得分后卫</td>
   <td>198CM</td>
   <td>94KG</td>
   <td>迷你版勒布朗身体素质极佳</td>
  </tr>
  </tbody>
  </table>
  </div>
  <div role="tabpanel" class="tab-pane fade" id="third" aria-labelledby="third-tab">
  <table class="table table-bordered table-striped">
  <thead>
  <tr>
   <th>号码</th>
   <th>姓名</th>
   <th>位置</th>
   <th>身高</th>
   <th>体重</th>
   <th>介绍</th>
  </tr>
  </thead>
  <tbody>
  <tr>
   <td>4</td>
   <td>以赛亚-托马斯</td>
   <td>控球后卫</td>
   <td>175CM</td>
   <td>84KG</td>
   <td>球风强硬 能够突破 具备三分射程</td>
  </tr>
  <tr>
   <td>0</td>
   <td>埃弗里-布拉德利</td>
   <td>控球后卫</td>
   <td>188CM</td>
   <td>82KG</td>
   <td>15-16赛季最佳防守阵容第一阵容</td>
  </tr>
  <tr>
   <td>42</td>
   <td>艾尔-霍福德</td>
   <td>中锋</td>
   <td>208CM</td>
   <td>111KG</td>
   <td>球风全面的内线 中距离精准</td>
  </tr>
  <tr>
   <td>9</td>
   <td>贾伊-克劳德</td>
   <td>大前锋</td>
   <td>198CM</td>
   <td>107KG</td>
   <td>能量四射的双能锋</td>
  </tr>
  <tr>
   <td>36</td>
   <td>马库斯-斯玛特</td>
   <td>控球后卫</td>
   <td>193CM</td>
   <td>100KG</td>
   <td>敢于突破不惧身体对抗球风无私</td>
  </tr>
  </tbody>
  </table>
  </div>
  <div role="tabpanel" class="tab-pane fade" id="fouth" aria-labelledby="fouth-tab">
  <table class="table table-bordered table-striped">
  <thead>
  <tr>
   <th>号码</th>
   <th>姓名</th>
   <th>位置</th>
   <th>身高</th>
   <th>体重</th>
   <th>介绍</th>
  </tr>
  </thead>
  <tbody>
  <tr>
   <td>13</td>
   <td>詹姆斯-哈登</td>
   <td>后卫</td>
   <td>196CM</td>
   <td>99.8KG</td>
   <td>两次入选NBA最佳阵容第一阵容</td>
  </tr>
  <tr>
   <td>1</td>
   <td>特雷沃-阿里扎</td>
   <td>小前锋</td>
   <td>203CM</td>
   <td>95.3KG</td>
   <td>08-09赛季NBA总冠军</td>
  </tr>
  <tr>
   <td>2</td>
   <td>帕特里克-贝弗利</td>
   <td>控球后卫</td>
   <td>185CM</td>
   <td>84KG</td>
   <td>2015年全明星技巧挑战赛冠军</td>
  </tr>
  <tr>
   <td>10</td>
   <td>埃里克-戈登</td>
   <td>得分后卫</td>
   <td>191CM</td>
   <td>100.7KG</td>
   <td>属于攻击型得分后卫</td>
  </tr>
  <tr>
   <td>3</td>
   <td>莱恩-安德森</td>
   <td>大前锋</td>
   <td>208CM</td>
   <td>109KG</td>
   <td>投篮型内线出手快</td>
  </tr>
  </tbody>
  </table>
  </div>
  <!-- 显示搜索结果框架 -->
  <div role="searchTable" class="tab-pane fade" id="search" aria-labelledby="search-tab">
  <h3>搜索结果</h3>
  <table class="table table-bordered table-striped">
  <thead>
  <tr>
   <th>号码</th>
   <th>姓名</th>
   <th>位置</th>
   <th>身高</th>
   <th>体重</th>
   <th>介绍</th>
  </tr>
  </thead>
  <tbody>
  </tbody>
  </table>
  </div>
 </div>
 </div>
 <p><em>信息摘自互联网内容 若有冒犯请原谅 请留言反馈 立即删除</em></p>
 </div>
 <script>
 $('#myTabs a').click(function(e) {
 e.preventDefault()
 $(this).tab('show')
 })
 $('#searchText').change(function() {
 console.log("dd");
 var searchText = $(this).val();
 var searchSelect = $('#searchSelect').val();
 var $searchTr = "";
 if(searchText != "") {
  $('#search tbody').html("");
  //筛选搜索
  if(searchSelect == "name") {
  $searchTr = $('#myTabContent').find('td:nth-child(2):contains(' + searchText + ')').parent();
  } else if(searchSelect == "position") {
  $searchTr = $('#myTabContent').find('td:nth-child(3):contains(' + searchText + ')').parent();
  } else if(searchSelect == "about") {
  $searchTr = $('#myTabContent').find('td:nth-child(6):contains(' + searchText + ')').parent();
  } else {
  $searchTr = $('#myTabContent').find('td:contains(' + searchText + ')').parent();
  }
  $searchTr.each(function(i, e) {
  $('#search tbody').append($(e).clone(true));
  });
  //如果没有搜索结果 显示一个报错div
  if($searchTr.length <= 0) {
  $('#search tbody').html('<td colspan = "7"><div class="alert alert-warning" role="alert">没有内容</div></td>')
  }
  $('#search-tab').tab('show');
 }
 }).keyup(function() {
 $(this).change();
 })
 $('#searchBth').click(function() {
 $('#searchText').change();
 })
 </script>
 </body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

jQuery 相关文章推荐
jQuery实现字体颜色渐变效果的方法
Mar 29 jQuery
jQuery源码解读之extend()与工具方法、实例方法详解
Mar 30 jQuery
jQuery查找dom的几种方法效率详解
May 17 jQuery
Jquery+Ajax+xml实现中国地区选择三级联动菜单效果(推荐)
Jun 09 jQuery
jQuery层级选择器_动力节点节点Java学院整理
Jul 04 jQuery
jquery对table做排序操作的实例演示
Aug 10 jQuery
jQuery的时间datetime控件在AngularJs中的使用实例(分享)
Aug 17 jQuery
jQuery实现鼠标点击处心形漂浮的炫酷效果示例
Apr 12 jQuery
jQuery添加新内容的四个常用方法分析【append,prepend,after,before】
Mar 19 jQuery
详解jquery和vue对比
Apr 16 jQuery
jQuery单页面文字搜索插件jquery.fullsearch.js的使用方法
Feb 04 jQuery
jQuery实现获取多选框的值示例
Feb 07 jQuery
jQuery插件FusionCharts绘制的2D帕累托图效果示例【附demo源码】
Mar 28 #jQuery
BootStrap中jQuery插件Carousel实现轮播广告效果
Mar 27 #jQuery
jQuery中的deferred使用方法
Mar 27 #jQuery
jQuery插件FusionCharts实现的3D帕累托图效果示例【附demo源码】
Mar 25 #jQuery
jQuery插件FusionCharts实现的Marimekko图效果示例【附demo源码】
Mar 24 #jQuery
jQuery实现鼠标经过显示动画边框特效
Mar 24 #jQuery
HTML5+jQuery实现搜索智能匹配功能
Mar 24 #jQuery
You might like
用PHP和ACCESS写聊天室(二)
2006/10/09 PHP
win7+apache+php+mysql环境配置操作详解
2013/06/10 PHP
PHP生成等比缩略图类和自定义函数分享
2014/06/25 PHP
javascript闭包的理解和实例
2010/08/12 Javascript
用jQuery实现一些导航条切换,显示隐藏的实例代码
2013/06/08 Javascript
Jquery动态改变图片IMG的src地址示例
2013/06/25 Javascript
动态加载jquery库的方法
2014/02/12 Javascript
用json方式实现在 js 中建立一个map
2014/05/02 Javascript
jQuery实现类似淘宝网图片放大效果的方法
2015/07/08 Javascript
最丑的时钟效果!js canvas时钟制作方法
2016/08/15 Javascript
vue双向绑定的简单实现
2016/12/22 Javascript
JavaScript实现瀑布流以及加载效果
2017/02/11 Javascript
Mint UI 基于 Vue.js 移动端组件库
2017/11/07 Javascript
动态Axios的配置步骤详解
2018/01/12 Javascript
vue axios基于常见业务场景的二次封装的实现
2018/09/21 Javascript
vue集成百度UEditor富文本编辑器使用教程
2018/09/21 Javascript
基于vue实现web端超大数据量表格的卡顿解决
2019/04/02 Javascript
nuxt+axios实现打包后动态修改请求地址的方法
2020/04/22 Javascript
JavaScript文档加载模式以及元素获取
2020/07/28 Javascript
vue v-for 点击当前行,获取当前行数据及event当前事件对象的操作
2020/09/10 Javascript
Vue通过阿里云oss的url连接直接下载文件并修改文件名的方法
2020/12/25 Vue.js
[37:23]DOTA2上海特级锦标赛主赛事日 - 3 胜者组第二轮#2Secret VS EG第二局
2016/03/04 DOTA
Python计算一个文件里字数的方法
2015/06/15 Python
Django应用程序中如何发送电子邮件详解
2017/02/04 Python
python sys,os,time模块的使用(包括时间格式的各种转换)
2018/04/27 Python
Python读取mat文件,并保存为pickle格式的方法
2018/10/23 Python
python使用threading.Condition交替打印两个字符
2019/05/07 Python
用pushplus+python监控亚马逊到货动态推送微信
2021/01/29 Python
EQVVS官网:设计师男装和女装
2018/10/24 全球购物
美国美食礼品篮网站:Gourmet Gift Baskets
2019/12/15 全球购物
安卓程序员求职信
2014/02/28 职场文书
出纳员岗位职责风险
2014/03/06 职场文书
关于读书的演讲稿500字
2014/08/27 职场文书
公务员岗前培训心得体会
2016/01/08 职场文书
MySQL慢查询优化解决问题
2022/03/17 MySQL
ubuntu开机后ROS程序自启动问题
2022/12/24 Servers