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 相关文章推荐
基于jQuery的图片剪切插件
Aug 03 Javascript
jQuery实现拖动调整表格单元格大小的代码实例
Jan 13 Javascript
js实现当复选框选择匿名登录时隐藏登录框效果
Aug 14 Javascript
JS实现的手机端精简幻灯片效果
Sep 05 Javascript
javascript中对象的定义、使用以及对象和原型链操作小结
Dec 14 Javascript
JavaScript插件Tab选项卡效果
Nov 14 Javascript
javaScript中&quot;==&quot;和&quot;===&quot;的区别详解
Mar 16 Javascript
解决angularJS中input标签的ng-change事件无效问题
Sep 13 Javascript
详解JavaScript的变量
Apr 04 Javascript
layui-table对返回的数据进行转变显示的实例
Sep 04 Javascript
ant design vue datepicker日期选择器中文化操作
Oct 28 Javascript
基于ajax实现上传图片代码示例解析
Dec 03 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
Search File Contents PHP 搜索目录文本内容的代码
2010/02/21 PHP
php绝对路径与相对路径之间关系的的分析
2010/03/03 PHP
初学PHP的朋友 经常问的一些问题。不断更新
2011/08/11 PHP
真正根据utf8编码的规律来进行截取字符串的函数(utf8版sub_str )
2012/10/24 PHP
php数组(array)输出的三种形式详解
2013/06/05 PHP
php通过执行CutyCapt命令实现网页截图的方法
2016/09/30 PHP
extjs 学习笔记(三) 最基本的grid
2009/10/15 Javascript
javascript动态添加、修改、删除对象的属性与方法详解
2014/01/27 Javascript
js实现仿Discuz文本框弹出层效果
2015/08/13 Javascript
javascript 数组的定义和数组的长度
2016/06/07 Javascript
预防网页挂马的方法总结
2016/11/03 Javascript
vue.js实现仿原生ios时间选择组件实例代码
2016/12/21 Javascript
JavaScript常用工具方法封装
2019/02/12 Javascript
微信小程序template模板与component组件的区别和使用详解
2019/05/22 Javascript
解决layui中onchange失效以及form动态渲染失效的问题
2019/09/27 Javascript
JS在Array数组中按指定位置删除或添加元素对象方法示例
2019/11/19 Javascript
浅谈VUE中演示v-for为什么要加key
2020/01/16 Javascript
JavaScript Window浏览器对象模型原理解析
2020/05/30 Javascript
详解vue 组件注册
2020/11/20 Vue.js
js回到页面指定位置的三种方式
2020/12/17 Javascript
[02:34]DOTA2亚洲邀请赛 BG战队出场宣传片
2015/03/09 DOTA
关于numpy.where()函数 返回值的解释
2019/12/06 Python
Pytorch之卷积层的使用详解
2019/12/31 Python
Python模块future用法原理详解
2020/01/20 Python
解决pycharm编辑区显示yaml文件层级结构遇中文乱码问题
2020/04/27 Python
Python实例方法、类方法、静态方法区别详解
2020/09/05 Python
利用Python实现自动扫雷小脚本
2020/12/17 Python
HTML5如何使用SVG的方法示例
2019/01/11 HTML / CSS
Html5页面上如何禁止手机虚拟键盘弹出
2020/03/19 HTML / CSS
Mamas & Papas沙特阿拉伯:英国最受欢迎的婴儿品牌
2017/11/20 全球购物
大连导游词
2015/02/12 职场文书
事业单位工作人员年度考核个人总结
2015/02/12 职场文书
导游词之大雁塔景区
2019/09/17 职场文书
仅用一句SQL更新整张表的涨跌幅、涨跌率的解决方案
2021/05/06 MySQL
HTML常用标签超详细整理
2022/03/19 HTML / CSS
vue 把二维或多维数组转一维数组
2022/04/24 Vue.js