Utiliser JavaScript pour créer une barre d'outils de recherche
Zhou Yinhui n°1, classe 03, école de logiciels, Université des sciences et technologies électroniques de Chine
: L'effet final
2 : Principe
Si vous recherchez « Chine » dans Yahoo, vous obtiendrez une chaîne d'adresses comme celle-ci dans la barre d'adresse du navigateur : http://search.cn.yahoo.com/search?ei=gbk&fr=fp- onglet-web -ycn&meta=vl%
3Dlang_zh-CN%26vl%3Dlang_zh-TW&pid=ysearch&source=ysearch_www_hp_button
&p=%D6%D0%B9%FA&Soumettre=
Cela a l'air un peu compliqué, simplifions-le : http://search.cn.yahoo.com/search?&p=%D6%D0%B9%FA
Il s'agit de la clé où &p=%D6%D0%B9%FA est le paramètre de mot-clé de la recherche et %D6%D0%B9%FA est "Chine".
Encodage d’URL. OK, tant que nous pouvons construire un tel codage.
Troisième : encodage d'URL
La fonction encodeURIComponent() de JavaScript peut terminer le travail d'encodage.
Par exemple, dans l'exemple ci-dessus, nous pouvons utiliser "http://search.cn.yahoo.com/search?&p="+encodeURIComponent("China");
Quatre : Code
(Cliquez sur le signe plus pour développer)
1 <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Search.aspx.cs" Inherits="Search" %>
2
3 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" " http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd ">
4
5 <html xmlns=" http://www.w3.org/1999/xhtml " >
6 <head runat="serveur">
7 <title>Rechercher</title>
8 <langage de script="javascript" type="text/javascript">
9 // <!CDATA[
10
11 fonction GetEncodeOfKey()
12 {
13 var strKey = window.document.getElementById("Text_Key").value;
14 return encodeURIComponent(strKey);
15}
16
17 fonction GetUrl(site)
18 {
19 var encode=GetEncodeOfKey();
20
21 //Internet
22 if(document.getElementById("RadioButtonList_Kind_0").checked)
vingt-trois {
24 si(site=="google")
25 {
26 renvoie " http://www.google.com/search?q="+encode+"&ei=UTF-8 " ;
27}
28 autres
29 {
30 renvoie " http://search.yahoo.com/search?p="+encode+"&ei=UTF-8 " ;
31}
32}
33 //mp3
34 sinon if(document.getElementById("RadioButtonList_Kind_1").checked)
35 {
36 si(site=="google")
37 {
38 return " http://www.google.com/search?q="+encode +" mp3"+"&ei=UTF-8";
39 }
40 autres
41 {
42 renvoie " http://audio.search.yahoo.com/search/audio?&p="+encode+"&ei=UTF-8 " ;
43
44}
45 }
46 //image
47 sinon if(document.getElementById("RadioButtonList_Kind_2").checked)
48 {
49 si(site=="google")
50 {
51 renvoie " http://images.google.com/images?q="+encode+"&ei=UTF-8 " ;
52 }
53 autres
54 {
55 renvoie " http://images.search.yahoo.com/search/images?p="+encode+"&ei=UTF-8 " ;
56 }
57 }
58 autres
59 {
60 //alerte("erreur");
61 }
62
63
64}
65
66 fonction Button_Google_onclick()
67 {
68 window.open(GetUrl("google"));
69 }
70
71 fonction Button_Yahoo_onclick()
72 {
73 window.open(GetUrl("yahoo"));
74}
75
76 // ]]>
77 </script>
78 </tête>
79 <corps>
80 <form id="form1" runat="serveur">
81 <div>
82 <br />
83 <br />
84 <strong><span style="font-size: 24pt; color: #336633">Recherche<br />
85 </span></strong>
86 </div>
87 <hr style="position: relative" />
88 <br />
89 <table style="gauche : 0px ; position : relative ; haut : 0px">
90 <tr>
91 <td style="largeur : 31px; hauteur : 21px">
92 <span style="font-family: Terminal">Clé</span></td>
93 <td style="largeur : 253px; hauteur : 21px">
94 <input id="Text_Key" style="largeur : 248px ; position : relative" type="text" /></td>
95 <td style="largeur : 175px; hauteur : 21px">
96 <asp:RadioButtonList ID="RadioButtonList_Kind" runat="server" RepeatDirection="Horizontal"
97 Style="position : relative" Font-Names="terminal">
98 <asp:ListItem Selected="True">Web</asp:ListItem>
99 <asp:ListItem>Mp3</asp:ListItem>
100 <asp:ListItem>Image</asp:ListItem>
101 </asp:RadioButtonList></td>
102 </tr>
103
104 <td style="largeur: 31px">
105 </td>
106 <td colspan="2">
107 <input id="Button_Google" style="width: 80px; position: relative" type="button" value="Google" onclick="return Button_Google_onclick()" />
108
109 <input id="Button_Yahoo" style="gauche : -29px ; largeur : 104px ; position : relative" type="bouton"
110 valeur="Yahoo!" onclick="return Button_Yahoo_onclick()" /></td>
111 </tr>
112 </table>
113 <br />
114 <hr style="position : relative" />
115 <asp:HyperLink ID="HyperLink_Home" runat="server" NavigateUrl="~/Default.aspx" Style="position: relative">Accueil</asp:HyperLink></form>
116 </corps>
117 </html>
118