浅析基于WEB前端页面的页面内容搜索的实现思路


Posted in Javascript onJune 10, 2014

在网页做查询以前都是这么做的

   表单获取关键字 ?> 传入后端SQL语句处理 ?>数据返回给前端显示

今天突然到游览器的Ctrl+F的这个功能怎么实现的,把数据一次放在页面上,然后在用JS 去匹配页面的内容。

不管怎么样,现在完成了功能,然后在做优化

$(function(){
     var UserArray = new Array();
     var TurenameArray = new Array();
     var table = $("table>tbody");     table.children().each(function(){
        userid = $(this).children().eq(0).html();
        //将学号存入输出的中
        UserArray.push(userid);
        turename = $(this).children().eq(1).html();
        //将姓名存了数组中
        TurenameArray.push(turename);
     });
   //
     $("#search").focus(function(){
          $(this).val("");
       }).blur(function(){
         val = $.trim($(this).val());
         if(val === "")
         {
            $(this).val("工号/姓名");
         }
       });
    $(".btn").click(function(){
      val = $("#search").val();
      if(val === "工号/姓名")
      {
         alert("请输入有效的工号和姓名");
      }
      else
      {
         table.children().hide("100");
         if(!isNaN(val))
         {
            hanld(UserArray,val);
         }
         else
         {
           hanld(TurenameArray,val);
         }
      }
    });
function hanld(array,value)
{
     for(i=0;i<array.length;i++)
      {
        if(array[i].indexOf(value) !== -1)
        {
            table.children().eq(i).show("1000");
        }
      }
}

代码在上面,我下面说一下 设计思路。

获取到要匹配的数据结合按顺序存入到数组中,然后在匹配。

用JS的子串定位的函数indexof 如果不匹配就返回-1,匹配就返回字符串的位置。

这样就可以完成搜索。先把所有数据都隐藏,然后匹配成功就显示出来了。这样就OK了

Javascript 相关文章推荐
JS+ACTIVEX实现网页选择本地目录路径对话框
Mar 18 Javascript
JS仿iGoogle自定义首页模块拖拽特效的方法
Feb 13 Javascript
javascript验证身份证号
Mar 03 Javascript
jQuery实现的向下图文信息滚动效果
May 03 Javascript
jQuery代码实现发展历程时间轴特效
Jul 30 Javascript
Bootstrap路径导航与分页学习使用
Feb 08 Javascript
微信小程序 如何保持登录状态
Aug 16 Javascript
vue移动端实现手机左右滑动入场动画
Jun 17 Javascript
基于JS实现table导出Excel并保留样式
May 19 Javascript
Vue结合路由配置递归实现菜单栏功能
Jun 16 Javascript
Vue-cli4 配置 element-ui 按需引入操作
Sep 11 Javascript
node中短信api实现验证码登录的示例代码
Jan 20 Javascript
JavaScript中统计Textarea字数并提示还能输入的字符
Jun 10 #Javascript
iframe里的页面禁止右键事件的方法
Jun 10 #Javascript
js类定义函数时用prototype与不用的区别示例介绍
Jun 10 #Javascript
深入探讨JavaScript、JQuery屏蔽网页鼠标右键菜单及禁止选择复制
Jun 10 #Javascript
js换图片效果可进行定时操作
Jun 09 #Javascript
jQuery如何将选中的对象转化为原始的DOM对象
Jun 09 #Javascript
javascript 处理null及null值示例
Jun 09 #Javascript
You might like
php数据库连接
2006/10/09 PHP
html中select语句读取mysql表中内容
2006/10/09 PHP
谈谈新手如何学习PHP 默默经典版本
2009/08/04 PHP
php实现水仙花数示例分享
2014/04/03 PHP
Laravel 5.0 发布 新版本特性详解
2015/02/10 PHP
PHP的Yii框架中使用数据库的配置和SQL操作实例教程
2016/03/17 PHP
PHP读MYSQL中文乱码的快速解决方法
2016/10/01 PHP
PHP输出Excel PHPExcel的方法
2018/07/26 PHP
YII分模块加载路由的实现方法
2018/10/01 PHP
JS定时器实例详细分析
2013/10/11 Javascript
js自动查找select下拉的菜单并选择(示例代码)
2014/02/26 Javascript
完美兼容IE,chrome,ff的设为首页、加入收藏及保存到桌面js代码
2014/12/17 Javascript
JavaScript实现在标题栏上显示当前日期的方法
2015/03/19 Javascript
javascript实现淡蓝色的鼠标拖动选择框实例
2015/05/09 Javascript
用JavaScript实现PHP的urlencode与urldecode函数
2015/08/13 Javascript
深入浅析JavaScript中with语句的理解
2016/05/12 Javascript
JavaScript算法系列之快速排序(Quicksort)算法实例详解
2016/09/04 Javascript
jQuery实现删除li节点的方法
2016/12/06 Javascript
js图片轮播插件的封装
2017/07/21 Javascript
javascript 取小数点后几位几种方法总结
2017/08/02 Javascript
微信小程序中进行地图导航功能的实现方法
2018/06/29 Javascript
简单说说angular.json文件的使用
2018/10/29 Javascript
js计算两个时间差 天 时 分 秒 毫秒的代码
2019/05/21 Javascript
JavaScript 浏览器对象模型BOM原理与常见用法实例分析
2019/12/16 Javascript
原生JS实现拖拽效果
2020/12/04 Javascript
python类型强制转换long to int的代码
2013/02/10 Python
Python正则表达式匹配ip地址实例
2014/10/09 Python
python实现的多线程端口扫描功能示例
2017/01/21 Python
python扫描proxy并获取可用代理ip的实例
2017/08/07 Python
Python----数据预处理代码实例
2019/03/20 Python
Alpine安装Python3依赖出现的问题及解决方法
2020/12/25 Python
解析html5 canvas实现背景鼠标连线动态效果代码
2019/06/17 HTML / CSS
最新的互联网创业计划书
2014/01/10 职场文书
保密工作整改报告
2014/11/06 职场文书
2015年保险业务员工作总结
2015/05/27 职场文书
SQL Server 忘记密码以及重新添加新账号
2022/04/26 SQL Server