浅析基于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 相关文章推荐
jQuery简单tab切换效果实现方法
Apr 08 Javascript
JS实现方向键切换输入框焦点的方法
Aug 19 Javascript
JS实现弹性菜单效果代码
Sep 07 Javascript
Jquery实现$.fn.extend和$.extend函数
Apr 14 Javascript
设置点击文本框或图片弹出日历控件的实现代码
May 12 Javascript
vuejs指令详解
Feb 07 Javascript
javascript实现日期三级联动下拉框选择菜单
Dec 03 Javascript
extjs简介_动力节点Java学院整理
Jul 17 Javascript
jQuery实现的上传图片本地预览效果简单示例
Mar 29 jQuery
Vue多组件仓库开发与发布详解
Feb 28 Javascript
Node.js对MongoDB进行增删改查操作的实例代码
Apr 18 Javascript
简单了解常用的JavaScript 库
Jul 16 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 strtotime 函数UNIX时间戳
2009/01/14 PHP
mysql,mysqli,PDO的各自不同介绍
2012/09/19 PHP
php+mysqli实现将数据库中一张表信息打印到表格里的方法
2015/01/28 PHP
windows7配置Nginx+php+mysql的详细教程
2016/09/04 PHP
Mac系统完美安装PHP7详细教程
2017/06/06 PHP
[原创]PHP正则匹配中英文、数字及下划线的方法【用户名验证】
2017/08/01 PHP
THREE.JS入门教程(1)THREE.JS使用前了解
2013/01/24 Javascript
解析使用JS 清空File控件的路径值
2013/07/08 Javascript
JavaScript控制网页层收起和展开效果的方法
2015/04/15 Javascript
jquery可定制的在线UEditor编辑器
2015/11/17 Javascript
javascript性能优化之事件委托实例详解
2015/12/12 Javascript
移动端网页开发调试神器Eruda的介绍与使用技巧
2017/10/30 Javascript
基于ES6作用域和解构赋值详解
2017/11/03 Javascript
vue、react等单页面项目部署到服务器的方法及vue和react的区别
2018/09/29 Javascript
微信小程序新手教程之页面打开数量限制
2019/03/03 Javascript
[52:26]完美世界DOTA2联赛决赛 FTD vs Phoenix 第一场 11.08
2020/11/11 DOTA
python设置检查点简单实现代码
2014/07/01 Python
跟老齐学Python之深入变量和引用对象
2014/09/24 Python
python中数据爬虫requests库使用方法详解
2018/02/11 Python
PyQt5每天必学之日历控件QCalendarWidget
2018/04/19 Python
python实现淘宝购物系统
2019/10/25 Python
Python Sphinx使用实例及问题解决
2020/01/17 Python
pycharm实现猜数游戏
2020/12/07 Python
基于HTML5实现类似微信手机摇一摇功能(计算摇动次数)
2017/07/24 HTML / CSS
小学教师岗位职责
2013/11/25 职场文书
讲座主持词
2014/03/20 职场文书
群众路线剖析材料
2014/09/30 职场文书
2014年客服工作总结范文
2014/11/13 职场文书
新教师个人工作总结
2015/02/06 职场文书
实用求职信模板范文
2019/05/13 职场文书
如何正确理解python装饰器
2021/06/15 Python
Python实现生活常识解答机器人
2021/06/28 Python
面试被问select......for update会锁表还是锁行
2021/11/11 MySQL
java协程框架quasar和kotlin中的协程对比分析
2022/02/24 Java/Android
深入解析Apache Hudi内核文件标记机制
2022/03/31 Servers
CSS 鼠标点击拖拽效果的实现代码
2022/12/24 HTML / CSS