本文实例为大家分享了js实现搜索提示框效果的具体代码,供大家参考,具体内容如下
首先写静态页面
1
2
3
4
5
6
7
8
|
< div class = "container" > <!-- 搜索框 --> < input type = "text" id = "search" /> <!-- 动态提示的数据框liebia --> < div id = "alert" > < ul ></ ul > </ div > </ div > |
CSS样式
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
* { margin : 0 ; padding : 0 ; } html, body { background : darkgray; } .container { position : absolute ; left : 50% ; top : 50px ; transform: translateX( -50% ); } #search { width : 300px ; height : 50px ; padding-left : 10px ; border-radius: 5px ; border : none ; outline : none ; } #alert { width : 312px ; position : relative ; left : -1px ; display : none ; /* 将ul列表隐藏 */ } #alert > ul { list-style : none ; margin : 0 ; padding : 0 ; } #alert > ul > li { border : 0.5px solid #000 ; height : 40px ; line-height : 40px ; padding-left : 10px ; border-radius: 5px ; background : #fff ; } #alert > ul:last-child { border-bottom : 1px solid #000 ; } |
JS代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
var $search = $( "#search" ); var $alert = $( "#alert" ); var $alertUl = $( "#alert>ul" ); // 清空列表的方法 function clearUl() { $alertUl.empty(); } $search .bind( "input" , function () { // 清空列表 clearUl(); // 获取到用户所输入的内容 var value = $( this ).val(); // console.log(value); // 使用getJSON方法获取json数据 $.getJSON( "data/server4.json" , function (data) { // console.log(data); // 获取到json数据中的name值 $.each(data, function (input, obj) { // console.log(obj); var name = obj.name; // console.log(name); if (name.indexOf(value) >= 0) { // 表示输入的内容在name中存在 var valueArr = obj.value; // console.log(valueArr); $.each(valueArr, function (input, text) { // console.log(text); // 将数据添加到HTML页面 $alertUl.append(`<li>${text}</li>`); }); } }); }); // 将ul列表显示出来 $alert.css( "display" , "block" ); }) .bind( "blur" , function () { $alert.css( "display" , "none" ); }); |
实现效果
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/Cool_breeze_/article/details/108408097