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

本文实例讲述了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程序设计有所帮助。

时间: 2024-11-05 11:54:24

JS实现表格数据各种搜索功能的方法_javascript技巧的相关文章

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

 这篇文章主要介绍了JS实现表格数据各种搜索功能的方法,可实现忽略大小写,模糊搜索,多关键搜索等功能,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了JS实现表格数据各种搜索功能.可忽略大小写,模糊搜索,多关键搜索.分享给大家供大家参考.具体实现方法如下: 代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title&

JS对大量数据进行多重过滤的方法_javascript技巧

前言 主要的需求是前端通过 Ajax 从后端取得了大量的数据,需要根据一些条件过滤,首先过滤的方法是这样的: class Filter { filterA(s) { let data = this.filterData || this.data; this.filterData = data.filter(m => m.a === s); } filterB(s) { let data = this.filterData || this.data; this.filterData = data.

Extjs4实现两个GridPanel之间数据拖拽功能具体方法_javascript技巧

1.之前在winForm上有看过在选择数据时会将一些数据放在待选框中,而用户可以将想要选择的数据放到备选框中,那么如何用Extjs实现类似功能,我们选择用两个gridPanel来模拟其中的备选框和待选框.如下图所示: 定义代码如下: 复制代码 代码如下:          {               xtype:'gridpanel',               multiSelect: true,                id:'staff',                 x:

js实现文章文字大小字号功能完整实例_javascript技巧

本文实例讲述了js实现文章文字大小字号功能的方法.分享给大家供大家参考.具体分析如下: 文字大中小是很多网站供用户阅读方便的一个功能,本文实例介绍的文字大中小字号功能可以在用户选择之后打开只要在同网站打开另一篇文章都会根据用户习惯来显示字体大小. 大家一定在某些大型网站看到过文章标题下三个按钮 "大"."中"."小",用来照顾不同人的阅读习惯.这里我就要介绍这种方法,而且比它们的还支持自动保存哦~只要选择一次,下次阅读自动调整到喜欢的字号. JS

php利用scws实现mysql全文搜索功能的方法_php技巧

本文实例讲述了php利用scws实现mysql全文搜索功能的方法.分享给大家供大家参考.具体方法如下: scws这样的中文分词插件比较不错,简单的学习了一下,它包涵一些专有名称.人名.地名.数字年代等规则集合,可以直接将语句按这些规则分开成一个一个关键词,准确率在90%-95%之间,按照安装说明把scws的扩展放入php的扩展目录里,下载规则文件和词典文件,并在php配置文件中引用它们,就可以用scws进行分词了. 1) 修改 php 扩展代码以兼容支持 php 5.4.x 2) 修正 php

js动态添加表格数据使用insertRow和insertCell实现_javascript技巧

效果图: 代码: js动态添加表格数据_2.html 复制代码 代码如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>js动态添加表格数据_2

JS实现简单路由器功能的方法_javascript技巧

本文实例讲述了JS实现简单路由器功能的方法.分享给大家供大家参考.具体实现方法如下: var wawa = {}; wawa.Router = function(){ function Router(){ } Router.prototype.setup = function(routemap, defaultFunc){ var that = this, rule, func; this.routemap = []; this.defaultFunc = defaultFunc; for (v

JS自定义对象实现Java中Map对象功能的方法_javascript技巧

本文实例讲述了JS自定义对象实现Java中Map对象功能的方法.分享给大家供大家参考.具体分析如下: Java中有集合,Map等对象存储工具类,这些对象使用简易,但是在JavaScript中,你只能使用Array对象. 这里我创建一个自定义对象,这个对象内包含一个数组来存储数据,数据对象是一个Key,可以实际存储的内容!   这里Key,你要使用String类型,和Java一样,你可以进行一些增加,删除,修改,获得的操作. 使用很简单,我先把工具类给大家看下: 复制代码 代码如下: /**  *

js拆分字符串并将分割的数据放到数组中的方法_javascript技巧

本文实例讲述了js拆分字符串并将分割的数据放到数组中的方法.分享给大家供大家参考.具体实现方法如下: var splitArray = new Array(); var string="太平洋.大西洋.印度洋.北冰洋"; var regex = /./; splitArray=string.split(regex); for(i=0; i < splitArray.length; i++){ document.write(splitArray[i] + "<br&