jQuery实现模糊搜索功能的方法分析

一天,当你走过蔓草荒烟,我便在那里向你轻声呼喊,以风声,以水响。斩断自己的退路,才能更好地赢得出路。

本文实例讲述了jQuery实现模糊搜索功能的方法。分享给大家供大家参考,具体如下:

功能一:关键字搜索

总结:

1、搜索出的结果,前台先要清空原有表格

$("#tbody").empty;

2、后台返回的json格式字符串 js eval 专成对象

var stus = eval("(" + msg + ")");

在循环进行字符串拼接到表格上

$("#tbody").html(str);

$("#btn").click(function() {
  var id = $.trim($("#id").val());
  var classname = $.trim($("#classname").val());
  var clazz = $.trim($("#class").val());
  if (id == "" & classname == "" & clazz == "") {
    alert("请至少输入一个筛选条件");
  } else {
    $.ajax({
      type : "post",
      url : "SearchServlet",
      data : {
        "type" : "find",
        "id" : id,
        "classname" : classname,
        "class" : clazz
      },
      success : function(msg) {
        if ("无结果" == msg) {
          alert(msg);
          $("#id").val("");
          $("#classname").val("");
          $("#class").val("");
        }
        var stus = eval("(" + msg + ")");
        $("#tbody").empty;
        var str = "";
        for (var i = 0; i < stus.length; i++) {
          str = str + "<tr><td>" + stus[i].id + "</td>"
          str = str + "<td>" + stus[i].studentNo + "</td>"
          str = str + "<td>" + stus[i].studentName + "</td>"
          str = str + "<td>" + stus[i].studentClass + "</td>"
          str = str + "<td>" + "<a rel="nofollow noopener noreferrer" href='javascript:a(" + stus[i].id + ")'>" + "删除" + "</a>" + "</td></tr>"
        }
        $("#tbody").html(str);
      }
    }
    );
  }
});

功能二:input框删除关键字,动态显示所有结果

总结:

1、a标签动态传参,传给后台进行删除,使用字符串拼接

str = str + "<td>" + "<a rel="nofollow noopener noreferrer" href='javascript:a(" + stus[i].id + ")'>" + "删除" + "</a>" + "</td></tr>"

$(".input").on('input', function(e) {
  var id = $.trim($("#id").val());
  var classname = $.trim($("#classname").val());
  var clazz = $.trim($("#class").val());
  if (id == "" && classname == "" && clazz == "") {
    $.ajax({
      type : "post",
      url : "SearchServlet",
      data : {
        "type" : "all",
      },
      success : function(msg) {
        var stus = eval("(" + msg + ")");
        $("#tbody").empty;
        var str = "";
        for (var i = 0; i < stus.length; i++) {
          str = str + "<tr><td>" + stus[i].id + "</td>"
          str = str + "<td>" + stus[i].studentNo + "</td>"
          str = str + "<td>" + stus[i].studentName + "</td>"
          str = str + "<td>" + stus[i].studentClass + "</td>"
          str = str + "<td>" + "<a rel="nofollow noopener noreferrer" href='javascript:a(" + stus[i].id + ")'>" + "删除" + "</a>" + "</td></tr>"
        }
        $("#tbody").html(str);
      }
    }
    );
  }
});

功能三:删除 table中的数据

总结:

在a标签里面传参 js写在a标签里面的两种方式

<td><arel="nofollow noopener noreferrer" href="javascript:a(${stu.id})" rel="external nofollow" >删除</a></td>
<td><a rel="nofollow noopener noreferrer" href="javascript:void(0);" rel="external nofollow" onclick="remove(${stu.id })">删除</a></td>

function a(id) {
  $.ajax({
    type : "get",
    url : "SearchServlet?type=delete&id=" + id,
    success : function(msg) {
      alert(msg);
      if ("删除成功" == msg) {
        $("tr").remove("#stu_" + id);
      }
    }
  });
}

希望本文所述对大家jQuery程序设计有所帮助。

本文jQuery实现模糊搜索功能的方法分析到此结束。谁都不必失落,适合自己的人生就是就是最好的人生。小编再次感谢大家对我们的支持!

标签: 搜索功能 jQuery