Home >Web Front-end >JS Tutorial >Detailed example of implementing search toolbar through javascript

Detailed example of implementing search toolbar through javascript

巴扎黑
巴扎黑Original
2017-05-22 11:46:091665browse

1: Final effect
Detailed example of implementing search toolbar through javascript

2: Principle

If you search for "China" in Yahoo, Then you will get a string of addresses like this in the browser's address bar: http://search.cn.yahoo.com/search?ei=gbk&fr=fp-tab-web-ycn&meta=vl%
3Dlang_zh-CN%26vl %3Dlang_zh-TW&pid=ysearch&source=ysearch_www_hp_button
&p=%D6%D0%B9%FA&Submit=
It looks a bit confusing, please simplify it: http://search.cn.yahoo.com/search?&p= %D6%D0%B9%FA
This is the key. &p=%D6%D0%B9%FA is the keyword parameter of the search, and %D6%D0%B9%FA is the
of "China" Url encoding. OK, as long as we can construct such encoding.

Three: URL encoding
The encodeURIComponent() function of JavaScript can complete the encoding work.
For example, in the above example, we can use "http://search.cn.yahoo.com/search?&p="+encodeURIComponent("China"); to complete.

Four: Code
(Click the plus sign to expand)

The code is as follows:

 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Search.aspx.cs" Inherits="Search" %> 
 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
 <html xmlns="http://www.w3.org/1999/xhtml" > 
 <head runat="server"> 
     <title>Search</title> 
 <script language="javascript" type="text/javascript"> 
 // <!CDATA[ 
 function GetEncodeOfKey() 
 { 
     var strKey = window.document.getElementById("Text_Key").value;       
     return  encodeURIComponent(strKey);  
 } 
 function GetUrl(site) 
 { 
     var encode=GetEncodeOfKey(); 
     //web 
     if(document.getElementById("RadioButtonList_Kind_0").checked) 
     { 
         if(site=="google") 
         { 
             return "http://www.google.com/search?q="+encode+"&ei=UTF-8"; 
         } 
         else 
         { 
             return "http://search.yahoo.com/search?p="+encode+"&ei=UTF-8"; 
         } 
     } 
     //mp3 
     else if(document.getElementById("RadioButtonList_Kind_1").checked) 
     { 
         if(site=="google") 
         { 
             return "http://www.google.com/search?q="+encode+" mp3"+"&ei=UTF-8"; 
         } 
         else 
         { 
             return "http://audio.search.yahoo.com/search/audio?&p="+encode+"&ei=UTF-8"; 
         } 
     } 
     //img 
     else if(document.getElementById("RadioButtonList_Kind_2").checked) 
     { 
         if(site=="google") 
         { 
             return "http://images.google.com/images?q="+encode+"&ei=UTF-8"; 
         } 
         else 
         { 
             return "http://images.search.yahoo.com/search/images?p="+encode+"&ei=UTF-8"; 
         } 
     } 
     else 
     { 
         //alert("err"); 
     } 
      
 } 
 function Button_Google_onclick()  
 { 
     window.open(GetUrl("google")); 
 } 
 function Button_Yahoo_onclick()  
 { 
     window.open(GetUrl("yahoo")); 
 } 
 // ]]> 
 </script> 
 </head> 
 <body> 
     <form id="form1" runat="server"> 
     <p> 
         <br /> 
         <br /> 
         <strong><span style="font-size: 24pt; color: #336633">Search<br /> 
         </span></strong> 
     </p> 
     <hr style="position: relative" /> 
         <br /> 
         <table style="left: 0px; position: relative; top: 0px"> 
             <tr> 
                 <td style="width: 31px; height: 21px"> 
                     <span style="font-family: Terminal">Key</span></td> 
                 <td style="width: 253px; height: 21px"> 
                     <input id="Text_Key" style="width: 248px; position: relative" type="text" /></td> 
                 <td style="width: 175px; height: 21px"> 
                     <asp:RadioButtonList ID="RadioButtonList_Kind" runat="server" RepeatDirection="Horizontal" 
                         Style="position: relative" Font-Names="terminal"> 
                         <asp:ListItem Selected="True">Web</asp:ListItem> 
                         <asp:ListItem>Mp3</asp:ListItem> 
                         <asp:ListItem>Image</asp:ListItem> 
                     </asp:RadioButtonList></td> 
             </tr> 
             <tr> 
                 <td style="width: 31px"> 
                 </td> 
                 <td colspan="2"> 
                     <input id="Button_Google" style="width: 80px; position: relative" type="button" value="Google" onclick="return Button_Google_onclick()" /> 
                               
                     <input id="Button_Yahoo" style="left: -29px; width: 104px; position: relative" type="button" 
                         value="Yahoo!" onclick="return Button_Yahoo_onclick()" /></td> 
         </table> 
         <br /> 
         <hr style="position: relative" /> 
         <asp:HyperLink ID="HyperLink_Home" runat="server" NavigateUrl="~/Default.aspx" Style="position: relative">Home</asp:HyperLink></form> 
 </body> 
 </html>

[Related recommendations]

1. Javascript free video tutorial

2. Detailed introduction to multi-valued motion of JavaScript motion framework (4)

3. JavaScript motion framework Sharing sample codes for the arbitrary movement of multiple objects (3)

4. How to solve the anti-shake problem and suspended couplets in JavaScript motion framework (2)

5. How to solve the problem of positive and negative speed rounding in JavaScript motion framework (1)

The above is the detailed content of Detailed example of implementing search toolbar through javascript. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn