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

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

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

以上是 浅析基于WEB前端页面的页面内容搜索的实现思路 的全部内容, 来源链接: utcz.com/z/355569.html

回到顶部