本文实例使用jQuery实现动态搜索显示功能,只要输入值就能立刻动态显示数据,不同于常规查询方法,供大家参考,具体内容如下
模拟效果如下:
情况1:
情况2:
实现代码:
<%@ page language=\"java\" pageEncoding=\"UTF-8\"%> <!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01 Transitional//EN\"> <html> <head> <title>struts2</title> <meta http-equiv=\"pragma\" content=\"no-cache\"> <meta http-equiv=\"cache-control\" content=\"no-cache\"> <meta http-equiv=\"expires\" content=\"0\"> <script type=\"text/javascript\" src=\"<%=request.getContextPath() %>/js/jquery-1.4.1.js\"></script> <script type=\"text/javascript\"> //数据源,json的格式. var user=[{\"id\": 1, \"name\": \"张三\",\"age\":\"25\"}, {\"id\": 2, \"name\": \"李四\",\"age\":\"35\"}, {\"id\": 3, \"name\": \"王五\",\"age\":\"20\"}, {\"id\": 4, \"name\": \"老王\",\"age\":\"20\"}, {\"id\": 5, \"name\": \"老张\",\"age\":\"25\"}, {\"id\": 6, \"name\": \"李四\",\"age\":\"35\"}, {\"id\": 7, \"name\": \"王五\",\"age\":\"20\"}, {\"id\": 8, \"name\": \"老王\",\"age\":\"20\"}, {\"id\": 9, \"name\": \"abc\",\"age\":\"25\"}, {\"id\": 10, \"name\": \"李b四\",\"age\":\"35\"}, {\"id\": 11, \"name\": \"125\",\"age\":\"20\"}, {\"id\": 12, \"name\": \"246\",\"age\":\"20\"}, {\"id\": 13, \"name\": \"张三\",\"age\":\"25\"}, {\"id\": 14, \"name\": \"李四\",\"age\":\"35\"}, {\"id\": 15, \"name\": \"王五\",\"age\":\"20\"}, {\"id\": 16, \"name\": \"老王\",\"age\":\"20\"}, {\"id\": 17, \"name\": \"张三\",\"age\":\"25\"}, {\"id\": 18, \"name\": \"李四\",\"age\":\"35\"}, {\"id\": 19, \"name\": \"王五\",\"age\":\"20\"}, {\"id\": 20, \"name\": \"老王\",\"age\":\"20\"}]; $(document).ready(function(){ var seach=$(\"#seach\"); seach.keyup(function(event){ //var keyEvent=event || window.event; //var keyCode=keyEvent.keyCode; // 数字键:48-57 // 字母键:65-90 // 删除键:8 // 后删除键:46 // 退格键:32 // enter键:13 //if((keyCode>=48&&keyCode<=57)||(keyCode>=65&&keyCode<=90)||keyCode==8||keyCode==13||keyCode==32||keyCode==46){ //获取当前文本框的值 var seachText=$(\"#seach\").val(); if(seachText!=\"\"){ //构造显示页面 var tab=\"<table width=\'300\' border=\'1\' cellpadding=\'0\' cellspacing=\'0\'><tr align=\'center\'><td>编号</td><td>名称</td><td>年龄</td></tr>\"; //遍历解析json $.each(user,function(id, item){ //如果包含则为table赋值 if(item.name.indexOf(seachText)!=-1){ tab+=\"<tr align=\'center\'><td>\"+item.id+\"</td><td>\"+item.name+\"</td><td>\"+item.age+\"</td></tr>\"; } }) tab+=\"</table>\"; $(\"#div\").html(tab); //重新覆盖掉,不然会追加 tab=\"<table width=\'300\' border=\'1\' cellpadding=\'0\' cellspacing=\'0\'><tr align=\'center\'><td>编号</td><td>名称</td><td>年龄</td></tr>\"; }else{ $(\"#div\").html(\"\"); } // } }) }); </script> </head> <body> 名字:<input id=\"seach\" /> <br/><br/> <div id=\"div\"></div> </body> </html>
以上就是本文的全部内容,希望对大家的学习有所帮助。
本文地址:https://www.stayed.cn/item/21742
转载请注明出处。
本站部分内容来源于网络,如侵犯到您的权益,请 联系我