浅析基于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 事件处理函数间的Event物件是否全等
Apr 08 Javascript
JQuery防止退格键网页后退的实现代码
Mar 23 Javascript
jQuery+AJAX实现遮罩层登录验证界面(附源码)
Sep 13 Javascript
DOM中事件处理概览与原理的全面解析
Aug 16 Javascript
Angularjs+bootstrap+table多选(全选)支持单击行选中实现编辑、删除功能
Mar 27 Javascript
微信小程序本地缓存数据增删改查实例详解
May 24 Javascript
elemetUi 组件--el-upload实现上传Excel文件的实例
Oct 27 Javascript
Vue实现简单分页器
Dec 29 Javascript
npm 常用命令详解(小结)
Jan 17 Javascript
微信小程序new Date()方法失效问题解决方法
Jul 29 Javascript
layui table去掉右侧滑动条的实现方法
Sep 05 Javascript
解决Layui 表格自适应高度的问题
Nov 15 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 date()函数警告: It is not safe to rely on the system解决方法
2014/08/20 PHP
Thinkphp5.0 框架的请求方式与响应方式分析
2019/10/14 PHP
window.showModalDialog使用手册
2007/01/11 Javascript
为Extjs加加速(javascript加速)
2010/08/19 Javascript
js报错 Object doesn't support this property or method的原因分析
2011/03/31 Javascript
jquery 图片上传按比例预览插件集合
2011/05/28 Javascript
让页面上两个div中的滚动条(滑块)同步运动示例
2013/08/07 Javascript
JavaScript中getUTCMinutes()方法的使用详解
2015/06/10 Javascript
Vue.js计算属性computed与watch(5)
2016/12/09 Javascript
JavaScript使用正则表达式获取全部分组内容的方法示例
2017/01/17 Javascript
JavaScript获取ul中li个数的方法
2017/02/13 Javascript
利用 spin.js 生成等待效果(js 等待效果)
2017/06/25 Javascript
NodeJS链接MySql数据库的操作方法
2017/06/27 NodeJs
微信小程序日历/日期选择插件使用方法详解
2018/12/28 Javascript
js实现类似iphone的网页滑屏解锁功能示例【附源码下载】
2019/06/10 Javascript
javascript中的this作用域详解
2019/07/15 Javascript
openLayer4实现动态改变标注图标
2020/08/17 Javascript
vue项目中微信登录的实现操作
2020/09/08 Javascript
vuecli项目构建SSR服务端渲染的实现
2020/10/30 Javascript
python 生成器协程运算实例
2017/09/04 Python
Python实现希尔排序算法的原理与用法实例分析
2017/11/23 Python
Python中函数参数调用方式分析
2018/08/09 Python
符合语言习惯的 Python 优雅编程技巧【推荐】
2018/09/25 Python
使用Python轻松完成垃圾分类(基于图像识别)
2019/07/09 Python
Django Admin中增加导出CSV功能过程解析
2019/09/04 Python
利用python画出AUC曲线的实例
2020/02/28 Python
Python dict和defaultdict使用实例解析
2020/03/12 Python
Python 合并拼接字符串的方法
2020/07/28 Python
Pytest单元测试框架如何实现参数化
2020/09/05 Python
基于python模拟TCP3次握手连接及发送数据
2020/11/06 Python
css3 pointer-events 介绍详解
2017/09/18 HTML / CSS
电子专业毕业生自我鉴定
2014/01/22 职场文书
公务员处分决定书
2015/06/25 职场文书
奇妙的 CSS shapes(CSS图形)
2021/04/05 HTML / CSS
DSP接收机前端设想
2022/04/05 无线电
Python循环之while无限迭代
2022/04/30 Python