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

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

   表单获取关键字 –> 传入后端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了

时间: 2025-01-01 18:33:17

浅析基于WEB前端页面的页面内容搜索的实现思路_javascript技巧的相关文章

JS自定义函数对web前端上传的文件进行类型大小判断_javascript技巧

废话不多说了直接给大家贴js代码了.具体代码如下所示: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <me

WEB 前端开发中防治重复提交的实现方法_javascript技巧

web前端数据请求或者表单提交往往通过对dom的点击事件来操作,但是往往因为认为点击过快(少年手速挺快的嘛),或者因为响应等待使得用户误人为没操作而重复很多次点击,造成表单数据的连续重复提交,造成用户体检的不好,甚至影响到整个系统的安全性.而前端的防治重复提交至少很有效的防治了人为正常操作下的很多不必要麻烦.下面就来讲讲如何有效避免前端的表单重复提交 表单提交有以下几种方式: <form name="form" method="post" action=&qu

基于chosen插件实现人员选择树搜索自动筛选功能_javascript技巧

要实现的功能截图: 要求: 1.点击输入框可以根据拼音自动筛选数据,并且标记已经选择的数据,没有结果的时候提示,相应的更新左边树状态 2.勾选树右侧树的复选框左侧出现相应的内容 我用到的插件 vue+chosen+ztree vue:组件化的MVVM库 chosen:单选列表和多选列表增强 ztree:基于jquery的树插件 分析 chosen插件已经可以实现1中的大部分效果,我们只需要预先获取数据,实现左右两侧一 一对应,最后点击发送获取最终的数据集合ID 具体实现 chosen需要的htm

web 前端常用组件之Layer弹出层组件_javascript技巧

经手几个项目,还是感觉 Layer 用起来比较的轻松,你能想到的 Layer 都能帮你做到. 感谢 Layer 作者贤心,Layer 官网地址:http://layer.layui.com/ 1. Layer 使用特点 Layer 具备全方位的解决方案,致力于服务各水平段的开发人员,让页面轻松地拥有丰富友好的操作体验. Layer 尽可能地在以更少的代码展现更强健的功能,注重性能的提升.易用和实用性.. Layer 兼容了包括IE6在内的所有主流浏览器. 数量可观的接口,可以自定义需要的风格,每

web前端开发upload上传头像js示例代码_javascript技巧

这次分享一个简易的上传头像示例,其大致流程为: 一.将选择的图片转为base64字符串 function preview(file) {//预览图片得到图片base64 var prevDiv = document.getElementById('preview'); if (file.files && file.files[0]) { var reader = new FileReader(); reader.onload = function(evt){ prevDiv.innerHT

个人网站留言页面(前端jQuery编写、后台php读写MySQL)_javascript技巧

首先,上个人网站的留言页面,大家可以看看效果:留言板 前端为了省事,使用jQuery编写,后台使用php简单读写MySQL数据库. 数据库设计和实现思路 数据库创建了一个表:comments,结构如下图: 全部评论(包括文章评论回复,留言板)都写在同一张表中,不同的评论区用字段belong区分 同一个评论区里,parent为0表示为评论,parent为某值时表示为哪个评论的回复,思路不复杂. 注意,这里并不讲CSS,大家根据自己的需要定制,现在开始封装: 定下功能 我们根据自己的需要定下功能,首

浅析JS刷新框架中的其他页面 &amp;amp;&amp;amp; JS刷新窗口方法汇总_javascript技巧

先来看一个简单的例子:下面以三个页面分别命名为frame.html.top.html.bottom.html为例来具体说明如何做.frame.html 由上(top.html)下(bottom.html)两个页面组成,代码如下: 复制代码 代码如下: <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >< HTML >< HEAD >< TITLE > frame

HTML页面滚动时获取离页面顶部的距离2种实现方法_javascript技巧

方法一:DOM 复制代码 代码如下: <script> window.onscroll = function() { console.info(window.scrollY); } </script> 注册onscroll事件,在控制台(按F12)打印当前页面距离页面顶部的距离(单位:像素px) 方法二:jQuery 复制代码 代码如下: $(function() { $(window).scroll(function() { console.info($(window).scro

web前端-在html页面的输入框内输入&amp;amp;lt;script&amp;amp;gt;&amp;amp;lt;!DOCTYPE html&amp;amp;gt;等,直接影响本页面,

问题描述 在html页面的输入框内输入<script><!DOCTYPE html>等,直接影响本页面, 还没传递就影响本页面了,但这些字符必须要,怎么办.我这个输入框是要输入一个错误页面的的代码如 输入 <!DOCTYPE html> w3af-网络攻击和检查框架-漏洞报告 解决方案 对这些输入内容做htmlencode编码. 解决方案二: 在服务器端将<>替换为对应的实体对象<和>就行 看这个:怎么防止html注入式攻击