


jquery+php implements automatic prompts when users enter search content_PHP tutorial
Today I suddenly wanted to make a search page for this site, so that users can find their favorite content through search, and also avoid the trouble of manually finding resources in massive information. My goal is the effect of Baidu homepage Similarly, when the user enters the text to be searched, we provide ten relevant pieces of information below. If the user is looking for one of these ten pieces of information, it is simple. Just click to open the page in a new page. Mainly I just want to be more user-friendly and make it more convenient for users to use.
Let’s take a look at the renderings first. This will give you more motivation, otherwise you won’t know what I’m talking about and what effect I want to achieve!
The following mainly explains the principle:
In the search.html page, when the user enters "j" in the search box, use javascript to obtain the text content of the search box, search for relevant content in the database and return it, and then use javascript to display the results returned by the server in The prompt box below the search box is for users to make reference choices.
Specific implementation method:
First, create a search box, a search button, and a layer that displays search prompts on the page, as shown in the following code
<div id="search">
<br>
<input type="text" name="k" class="k"> <input type="button" name="s" value="搜索"><br>
</div>
<br>
<div id="search_auto"></div>
Use the browser to browse the page, and you will see the effect below
It looks very ordinary and has no style. Now let’s make some adjustments to the style
#search{font-size:14px;}<br>
#search .k{padding:2px 1px; width:320px;} /*将搜索框宽度设置大点*/
Then adjust the style of the layer that displays the search prompt. Since the search prompt layer is directly below the search box, we set its positioning method to absolute positioning
#search_auto{border:1px solid #817FB2; position:absolute;} /*Set the border and positioning method*/
Then use JS to place the search prompt layer directly below the search box, and the width is the same as the search box. Here we use jQuery to solve the problem
$(#search_auto).css({width:$(#search input[name="k"]).width()+4});
The position and width of the search prompt layer have been determined. Since the prompt box will not be displayed before the user enters the search text, we first need to set it to hidden and add display to the style of the prompt layer: none hides it.
Everything is OK. Now we only need to register the event for the onkeyup of the search box. We still use jQuery to handle it. In jQuery, it is keyup
$(#search input[name="k"]).keyup(function(){<br>
$.post(search_auto.php,{value:$(this).val()},function(data){ //向服务器上的search_auto.php发送post数据,$.post是jQuery的方法<br>
if(data==0) $(#search_auto).html().css(display,none); //判断服务器上返回的数据,如果等于0,则表示没有找到相关的内容,所以将提示框的内容清空并隐藏<br>
else $(#search_auto).html(data).css(display,block); //如果服务器上返回的数据不等于0,则将返回的内容放到提示框内并显示提示框<br>
});<br>
});
The above client has been completed and can send the user input to the server and respond to the server’s return value.
So how does the server process the data sent by the client? Let’s use PHP as an example
<?php <br />
$v=$_POST[value];<br>
$re=mysql_query("select * from test where title like %$v% order by addtime desc limit 10"); //根据客户端发送来的数据,到数据库中查询10条相关的结果<br>
if(mysql_num_rows($re)
echo <ul>;<br>
while($ro=mysql_fetch_array($re)) echo <li><a href="">.$ro[title].</a></li>; //将查询得到的相关结果的标题输出,这个地方需要注意,由于通过jQuery的ajax技术返回的文本是UTF-8编码,所以如果$ro[title] 中包含中文,一定要记得用PHP的iconv或其它函数将其转换成UTF-8编码,否则在页面中看到的会是一串乱码<br>
echo <li class="cls">
<a href="javascript:;" onclick="$(this).parent().parent().parent().fadeOut(100)">关闭</a>& gt;</li>; //输入一个关闭按钮,让用户不想看到提示层时可以点击关闭,关闭按钮采用jQuery,解释一下,当前点击的按钮是$(this),一直向上找到其第三个父元素,让它逐渐消失<br>
echo </ul>;<br>
?>
Now the server can correctly execute the data we sent and return the corresponding results. Now enter a text in the search box to test it, but the premise is that there must be something related to this text in your database. content, otherwise you wouldn’t see the prompt box appear because there is no relevant prompt content, haha.
But there is still a slight flaw, that is, the content in the prompt box is not beautiful. Compared with the prompt box we saw in Baidu search, it is simply too ugly. Haha, don’t worry, we will use css to adjust the display. The effect of
#search_auto li{background:#FFF; text-align:left;} /*设置提示框内的li标签效果*/<br>
#search_auto li.cls{text-align:right;} /*设置提示框内的关闭按钮效果*/<br>
#search_auto li a{display:block; padding:5px 6px; cursor:pointer; color:#666;} /*设置提示框内li标签下的a标签效果*/<br>
#search_auto li a:hover{background:#D8D8D8; text-decoration:none; color:#000;} /*当鼠标移入提示框内时的效果*/
Now it is truly fully completed. As for whether to set up a delay processing or other more complete functions, it is left to friends to use their own brains. You can also reply to your thoughts below, etc.
Complete client code:
<div id="search">
<br>
<input type="text" name="k" class="k"> <input type="button" name="s" value="搜索"><br>
</div>
<br>
<div id="search_auto"></div>
<script><br />
$(function(){<br />
<br />
$(#search_auto).css({width:$(#search input[name="k"]).width()+4});<br />
$(#search input[name="k"]).keyup(function(){<br />
$.post(search_auto.php,{value:$(this).val()},function(data){<br />
if(data==0) $(#search_auto).html().css(display,none);<br />
else $(#search_auto).html(data).css(display,block);<br />
});<br />
});<br />
<br />
});<br />
</script>
Server-side complete code:
<?php <br />
$v=$_POST[value];<br>
$re=mysql_query("select * from test where title like %$v% order by addtime desc limit 10");<br>
if(mysql_num_rows($re)
echo <ul>;<br>
while($ro=mysql_fetch_array($re)) echo <li><a href="">.$ro[title].</a></li>;<br>
echo <li class="cls">
<a href="javascript:;" onclick="$(this).parent().parent().parent().fadeOut(100)">关闭</a>& gt;</li>;<br>
echo </ul>;<br>
?>

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



With the rapid development of social media, Xiaohongshu has become one of the most popular social platforms. Users can create a Xiaohongshu account to show their personal identity and communicate and interact with other users. If you need to find a user’s Xiaohongshu number, you can follow these simple steps. 1. How to use Xiaohongshu account to find users? 1. Open the Xiaohongshu APP, click the "Discover" button in the lower right corner, and then select the "Notes" option. 2. In the note list, find the note posted by the user you want to find. Click to enter the note details page. 3. On the note details page, click the "Follow" button below the user's avatar to enter the user's personal homepage. 4. In the upper right corner of the user's personal homepage, click the three-dot button and select "Personal Information"

What should I do if Google Chrome prompts that the content of this tab is being shared? When we use Google Chrome to open a new tab, we sometimes encounter a prompt that the content of this tab is being shared. So what is going on? Let this site provide users with a detailed introduction to the problem of Google Chrome prompting that the content of this tab is being shared. Google Chrome prompts that the content of this tab is being shared. Solution: 1. Open Google Chrome. You can see three dots in the upper right corner of the browser "Customize and control Google Chrome". Click the icon with the mouse to change the icon. 2. After clicking, the menu window of Google Chrome will pop up below, and the mouse will move to "More Tools"

In Ubuntu systems, the root user is usually disabled. To activate the root user, you can use the passwd command to set a password and then use the su- command to log in as root. The root user is a user with unrestricted system administrative rights. He has permissions to access and modify files, user management, software installation and removal, and system configuration changes. There are obvious differences between the root user and ordinary users. The root user has the highest authority and broader control rights in the system. The root user can execute important system commands and edit system files, which ordinary users cannot do. In this guide, I'll explore the Ubuntu root user, how to log in as root, and how it differs from a normal user. Notice

How to implement dual WeChat login on Huawei mobile phones? With the rise of social media, WeChat has become one of the indispensable communication tools in people's daily lives. However, many people may encounter a problem: logging into multiple WeChat accounts at the same time on the same mobile phone. For Huawei mobile phone users, it is not difficult to achieve dual WeChat login. This article will introduce how to achieve dual WeChat login on Huawei mobile phones. First of all, the EMUI system that comes with Huawei mobile phones provides a very convenient function - dual application opening. Through the application dual opening function, users can simultaneously

The programming language PHP is a powerful tool for web development, capable of supporting a variety of different programming logics and algorithms. Among them, implementing the Fibonacci sequence is a common and classic programming problem. In this article, we will introduce how to use the PHP programming language to implement the Fibonacci sequence, and attach specific code examples. The Fibonacci sequence is a mathematical sequence defined as follows: the first and second elements of the sequence are 1, and starting from the third element, the value of each element is equal to the sum of the previous two elements. The first few elements of the sequence

In the era dominated by intelligence, office software has also become popular, and Wps forms are adopted by the majority of office workers due to their flexibility. At work, we are required not only to learn simple form making and text entry, but also to master more operational skills in order to complete the tasks in actual work. Reports with data and using forms are more convenient, clear and accurate. The lesson we bring to you today is: The WPS table cannot find the data you are searching for. Why please check the search option location? 1. First select the Excel table and double-click to open it. Then in this interface, select all cells. 2. Then in this interface, click the "Edit" option in "File" in the top toolbar. 3. Secondly, in this interface, click "

How to implement the WeChat clone function on Huawei mobile phones With the popularity of social software and people's increasing emphasis on privacy and security, the WeChat clone function has gradually become the focus of people's attention. The WeChat clone function can help users log in to multiple WeChat accounts on the same mobile phone at the same time, making it easier to manage and use. It is not difficult to implement the WeChat clone function on Huawei mobile phones. You only need to follow the following steps. Step 1: Make sure that the mobile phone system version and WeChat version meet the requirements. First, make sure that your Huawei mobile phone system version has been updated to the latest version, as well as the WeChat App.

The mobile Taobao app software provides a lot of good products. You can buy them anytime and anywhere, and everything is genuine. The price tag of each product is clear. There are no complicated operations at all, making you enjoy more convenient shopping. . You can search and purchase freely as you like. The product sections of different categories are all open. Add your personal delivery address and contact number to facilitate the courier company to contact you, and check the latest logistics trends in real time. Then some new users are using it for the first time. If you don’t know how to search for products, of course you only need to enter keywords in the search bar to find all the product results. You can’t stop shopping freely. Now the editor will provide detailed online methods for mobile Taobao users to search for store names. 1. First open the Taobao app on your mobile phone,
