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各种复制代码收集
Sep 20 Javascript
IE6/7 and IE8/9/10(IE7模式)依次隐藏具有absolute或relative的父元素和子元素后再显示父元素
Jul 31 Javascript
JavaScript对内存分配及管理机制详细解析
Nov 11 Javascript
让alert不出现弹窗的两种方法
May 18 Javascript
js实现同一页面多个运动效果的方法
Apr 10 Javascript
JavaScript中利用各种循环进行遍历的方式总结
Nov 10 Javascript
jquery拖拽排序简单实现方法(效果增强版)
Feb 16 Javascript
浅析Bootstrap验证控件的使用
Jun 23 Javascript
js实现获取鼠标当前的位置
Dec 14 Javascript
教你一步步用jQyery实现轮播器
Dec 18 Javascript
剖析Angular Component的源码示例
Mar 23 Javascript
vue data有值,但是页面{{}} 取不到值的解决
Nov 09 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
destoon供应信息title调用出公司名称的方法
2014/08/22 PHP
php目录拷贝实现方法
2015/07/10 PHP
php记录搜索引擎爬行记录的实现代码
2018/03/02 PHP
关于laravel5.5的定时任务详解(demo)
2019/10/23 PHP
javascript中使用css需要注意的地方小结
2010/09/01 Javascript
jQuery使用数组编写图片无缝向左滚动
2012/12/11 Javascript
jQuery中innerHeight()方法用法实例
2015/01/19 Javascript
JS留言功能的简单实现案例(推荐)
2016/06/23 Javascript
Vue表单实例代码
2016/09/05 Javascript
js 打开新页面在屏幕中间的实现方法
2016/11/02 Javascript
domReady的实现案例
2016/11/23 Javascript
Angular 开发学习之Angular CLI的安装使用
2017/12/31 Javascript
使用express搭建一个简单的查询服务器的方法
2018/02/09 Javascript
jQuery中复合选择器简单用法示例
2018/03/31 jQuery
详解 微信小程序开发框架(MINA)
2019/05/17 Javascript
vue  elementUI 表单嵌套验证的实例代码
2019/11/06 Javascript
vue缓存之keep-alive的理解和应用详解
2020/11/02 Javascript
JavaScript基于SVG的图片切换效果实例代码
2020/12/15 Javascript
[04:07]显微镜下的DOTA2第八期——英雄复活动作
2014/06/24 DOTA
python复制文件到指定目录的实例
2018/04/27 Python
python topN 取最大的N个数或最小的N个数方法
2018/06/04 Python
对python中Librosa的mfcc步骤详解
2019/01/09 Python
Python2 Selenium元素定位的实现(8种)
2019/02/25 Python
Python中super函数用法实例分析
2019/03/18 Python
pybind11在Windows下的使用教程
2019/07/04 Python
python中的垃圾回收(GC)机制
2020/09/21 Python
线程同步的方法
2016/11/23 面试题
本科生职业生涯规划书范文
2014/01/21 职场文书
计算机网络专业求职信
2014/06/05 职场文书
伦敦奥运会的口号
2014/06/21 职场文书
社团活动总结书
2014/06/27 职场文书
2014年房产销售工作总结
2014/12/08 职场文书
公司劳动纪律管理制度
2015/08/04 职场文书
病假条格式范文
2015/08/17 职场文书
Python词云的正确实现方法实例
2021/05/08 Python
Python-OpenCV教程之图像的位运算详解
2021/06/21 Python