JS实现表格数据各种搜索功能的方法


Posted in Javascript onMarch 03, 2015

本文实例讲述了JS实现表格数据各种搜索功能。可忽略大小写,模糊搜索,多关键搜索。分享给大家供大家参考。具体实现方法如下:

<!DOCTYPE html>

<html>

 <head>

  <meta charset="utf-8">

  <title></title>

  <script type="text/javascript">

   window.onload=function(){

    var oTab=document.getElementById("tab");

    var oBt=document.getElementsByTagName("input");

    oBt[1].onclick=function(){

     for(var i=0;i<oTab.tBodies[0].rows.length;i++)

     {

      var str1=oTab.tBodies[0].rows[i].cells[1].innerHTML.toUpperCase();

      var str2=oBt[0].value.toUpperCase();

      //使用string.toUpperCase()(将字符串中的字符全部转换成大写)或string.toLowerCase()(将字符串中的字符全部转换成小写)

      //所谓忽略大小写的搜索就是将用户输入的字符串全部转换大写或小写,然后把信息表中的字符串的全部转换成大写或小写,最后再去比较两者转换后的字符就行了

      /*******************************JS实现表格忽略大小写搜索*********************************/

      if(str1==str2){

       oTab.tBodies[0].rows[i].style.background='red';

      }

      else{

        oTab.tBodies[0].rows[i].style.background='';

      }

     /***********************************JS实现表格的模糊搜索*************************************/

     //表格的模糊搜索的就是通过JS中的一个search()方法,使用格式,string1.search(string2);如果

     //用户输入的字符串是其一个子串,就会返回该子串在主串的位置,不匹配则会返回-1,故操作如下

     if(str1.search(str2)!=-1){oTab.tBodies[0].rows[i].style.background='red';}

     else{oTab.tBodies[0].rows[i].style.background='';}

     /***********************************JS实现表格的多关键字搜索********************************/

     //表格的多关键字搜索,加入用户所输入的多个关键字之间用空格隔开,就用split方法把一个长字符串以空格为标准,分成一个字符串数组,

     //然后以一个循环将切成的数组的子字符串与信息表中的字符串比较

     var arr=str2.split(' ');

     for(var j=0;j<arr.length;j++)

     {

      if(str1.search(arr[j])!=-1){oTab.tBodies[0].rows[i].style.background='red';}

     }

     }

    }

   }

  </script>

 </head>

 <body>

  姓名:<input type="text" />

  <input type="button" value="搜索"/>

  <table border="1" bordercolor="blue" id="tab">

   <thead>

     <td><h2>ID</h2></td>

     <td><h2>Name</h2></td>

     <td><h2>Age</h2></td>

   </thead>

   <tbody>

    <tr>

     <td>1</td>

     <td>Blue</td>

     <td>15</td>

    </tr>

     <tr>

     <td>2</td>

     <td>Mikyou</td>

     <td>26</td>

    </tr>

     <tr>

     <td>3</td>

     <td>weak</td>

     <td>24</td>

    </tr>

     <tr>

     <td>4</td>

     <td>sky</td>

     <td>35</td>

    </tr>

     <tr>

     <td>5</td>

     <td>李四</td>

     <td>18</td>

    </tr>

   </tbody>

  </table>

 </body>

</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
javascript去除字符串左右两端的空格
Feb 05 Javascript
js给网页加上背景音乐及选择音效的方法
Mar 03 Javascript
AngularJS模块学习之Anchor Scroll
Jan 19 Javascript
jQuery实现带水平滑杆的焦点图动画插件
Mar 08 Javascript
vue.js实现仿原生ios时间选择组件实例代码
Dec 21 Javascript
js/jquery控制页面动态加载数据 滑动滚动条自动加载事件的方法
Feb 08 Javascript
jQuery实现radio第一次点击选中第二次点击取消功能
May 15 jQuery
vue-router2.0 组件之间传参及获取动态参数的方法
Nov 10 Javascript
React-Router如何进行页面权限管理的方法
Dec 06 Javascript
jQuery实现仿京东防抖动菜单效果示例
Jul 06 jQuery
新手简单了解vue
May 29 Javascript
Javascript var变量删除原理及实现
Aug 26 Javascript
深入理解JavaScript系列(27):设计模式之建造者模式详解
Mar 03 #Javascript
javascript验证身份证号
Mar 03 #Javascript
JS烟花背景效果实现方法
Mar 03 #Javascript
深入理解JavaScript系列(26):设计模式之构造函数模式详解
Mar 03 #Javascript
深入理解JavaScript系列(25):设计模式之单例模式详解
Mar 03 #Javascript
js+jquery常用知识点汇总
Mar 03 #Javascript
js实现宇宙星空背景效果的方法
Mar 03 #Javascript
You might like
PHP Array交叉表实现代码
2010/08/05 PHP
在WINDOWS中设置计划任务执行PHP文件的方法
2011/12/19 PHP
php的POSIX 函数以及进程测试的深入分析
2013/06/03 PHP
PHP使用mysql_fetch_row查询获得数据行列表的方法
2015/03/18 PHP
php策略模式简单示例分析【区别于工厂模式】
2019/09/25 PHP
PHPStorm2020.1永久激活及下载更新至2020(推荐)
2020/09/25 PHP
JavaScript Event学习第九章 鼠标事件
2010/02/08 Javascript
简易js代码实现计算器操作
2013/04/15 Javascript
固定网页背景图同时保持图片比例的思路代码
2013/08/15 Javascript
提取字符串中年月日的函数代码
2013/11/05 Javascript
删除节点的jquery代码
2014/01/13 Javascript
基于jquery和svg实现超炫酷的动画特效
2014/12/09 Javascript
触屏中的JavaScript事件分析
2015/02/06 Javascript
用JavaScript显示浏览器客户端信息的超相近教程
2015/06/18 Javascript
js实现仿微博滚动显示信息的效果
2015/12/21 Javascript
JavaScript中创建对象的模式汇总
2016/04/19 Javascript
node.js实现快速截图
2016/08/27 Javascript
jQuery插件实现可输入和自动匹配的下拉框
2016/10/24 Javascript
JavaScript、C# URL编码、解码总结
2017/01/21 Javascript
JS常见创建类的方法小结【工厂方式,构造器方式,原型方式,联合方式等】
2017/04/01 Javascript
Vue基本使用之对象提供的属性功能
2019/04/30 Javascript
Angular2实现的秒表及改良版示例
2019/05/10 Javascript
nuxt踩坑之Vuex状态树的模块方式使用详解
2019/09/06 Javascript
简单谈谈Python中函数的可变参数
2016/09/02 Python
Python向日志输出中添加上下文信息
2017/05/24 Python
python排序函数sort()与sorted()的区别
2018/09/18 Python
基于pycharm导入模块显示不存在的解决方法
2018/10/13 Python
Python使用Beautiful Soup爬取豆瓣音乐排行榜过程解析
2019/08/15 Python
python TK库简单应用(实时显示子进程输出)
2019/10/29 Python
HTML5实现视频直播功能思路详解
2017/11/16 HTML / CSS
HTML5调用手机摄像头拍照的实现思路及代码
2014/06/15 HTML / CSS
公务员的自我鉴定
2013/10/26 职场文书
协会周年庆活动方案
2014/08/26 职场文书
上课讲话检讨书范文
2015/05/07 职场文书
初中班级口号霸气押韵
2015/12/24 职场文书
Python图像处理之图像拼接
2021/04/28 Python