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 相关文章推荐
IE8 原生JSON支持
Apr 13 Javascript
url 特殊字符 传递参数解决方法
Jan 01 Javascript
用js将内容复制到剪贴板兼容浏览器
Mar 18 Javascript
一款由jquery实现的整屏切换特效
Sep 15 Javascript
基于Node.js的JavaScript项目构建工具gulp的使用教程
May 20 Javascript
利用C/C++编写node.js原生模块的方法教程
Jul 07 Javascript
基于vue组件实现猜数字游戏
May 28 Javascript
详解微信小程序的 request 封装示例
Aug 21 Javascript
vue-router跳转时打开新页面的两种方法
Jul 29 Javascript
vue-router两种模式区别及使用注意事项详解
Aug 01 Javascript
vue简单封装axios插件和接口的统一管理操作示例
Feb 02 Javascript
解决vue elementUI 使用el-select 时 change事件的触发问题
Nov 17 Vue.js
深入理解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
桌面中心(三)修改数据库
2006/10/09 PHP
基于MySQL体系结构的分析
2013/05/02 PHP
php生成验证码,缩略图及水印图的类分享
2016/04/07 PHP
PHP重载基础知识回顾
2020/09/10 PHP
Javascript 键盘事件的组合使用实现代码
2012/05/04 Javascript
html向js方法传递参数具体实现
2013/08/08 Javascript
详解JavaScript逻辑And运算符
2015/12/04 Javascript
jQuery轻松实现表格的隔行变色和点击行变色的实例代码
2016/05/09 Javascript
炫酷的js手风琴效果
2016/10/13 Javascript
Vue开发过程中遇到的疑惑知识点总结
2017/01/20 Javascript
javascript+html5+css3自定义弹出窗口效果
2017/10/26 Javascript
微信小程序中遇到的iOS兼容性问题小结
2018/11/14 Javascript
Angular7创建项目、组件、服务以及服务的使用
2019/02/19 Javascript
微信小程序实现自定义动画弹框/提示框的方法实例
2020/11/06 Javascript
[00:32]DOTA2上海特级锦标赛 Ehome战队宣传片
2016/03/03 DOTA
在Python中关于中文编码问题的处理建议
2015/04/08 Python
Python中的hypot()方法使用简介
2015/05/18 Python
python实现爬虫下载美女图片
2015/07/14 Python
python实现文本去重且不打乱原本顺序
2016/01/26 Python
运用Python的webbrowser实现定时打开特定网页
2019/02/21 Python
Python3实现的判断环形链表算法示例
2019/03/07 Python
numpy库与pandas库axis=0,axis= 1轴的用法详解
2019/05/27 Python
pyqt 多窗口之间的相互调用方法
2019/06/19 Python
python如何给字典的键对应的值为字典项的字典赋值
2019/07/05 Python
Python3爬虫关于识别检验滑动验证码的实例
2020/07/30 Python
Python爬虫实现selenium处理iframe作用域问题
2021/01/27 Python
英国在线自行车商店:Evans Cycles
2016/09/26 全球购物
Crocs欧洲官网:Crocs Europe
2020/01/14 全球购物
优秀员工自荐书范文
2013/12/08 职场文书
环境监测与治理技术专业求职信
2014/07/06 职场文书
公司人事专员岗位职责
2014/08/11 职场文书
“四风”问题的主要表现和危害思想汇报
2014/09/19 职场文书
不遵守课堂纪律的检讨书
2014/09/24 职场文书
教学改革问题查摆整改措施
2014/09/27 职场文书
2015年三好一满意工作总结
2015/07/24 职场文书
HTML通过表单实现酒店筛选功能
2021/05/18 HTML / CSS