午夜国产狂喷潮在线观看|国产AⅤ精品一区二区久久|中文字幕AV中文字幕|国产看片高清在线

    jQuery+Ajax實(shí)現(xiàn)類似百度的搜索自動提示功能
    來源:易賢網(wǎng) 閱讀:7221 次 日期:2015-04-17 13:43:03
    溫馨提示:易賢網(wǎng)小編為您整理了“jQuery+Ajax實(shí)現(xiàn)類似百度的搜索自動提示功能”,方便廣大網(wǎng)友查閱!

    jQuery+Ajax實(shí)現(xiàn)類似百度的搜索自動提示功能,具體看下面的代碼:

    頁面:

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">

    <html xmlns="">

    <head runat="server">

    <title>seach</title>

    <script type="text/javascript" src="jquery.min.js" ></script>

    <script type="text/javascript" src="js.js"></script>

    <link href="css.css" rel="stylesheet" type="text/css" />

    </head>

    <body>

    <form id="form1" runat="server">

    <div onClick="keyup_close();">

    <ul>

    <li class="h_14">

    <iframe style="DISPLAY: none" id="if_keyup" name="if_keyup"></iframe>

    <input id="kw" name="kw" class="h_15" onKeyUp="keyup(event)" autocomplete="off" />

    <div style="DISPLAY: none" id="keyup_d" class="sokeyup" ></div>

    </li>

    <li class="h_16">

    <input style="CURSOR: pointer" onClick="so_search();" src="searchbuttom.gif" type="image" />

    </li>

    </ul>

    </div>

    </form>

    </body>

    </html>

    css

    UL {

    padding: 0px; LIST-STYLE-TYPE: none;

    MARGIN: 0px;

    LIST-STYLE-IMAGE: none;

    height: 52px;

    }

    LI {

    PADDING-BOTTOM: 0px;

    LIST-STYLE-TYPE: none;

    MARGIN: 0px;

    PADDING-LEFT: 0px;

    PADDING-RIGHT: 0px;

    LIST-STYLE-IMAGE: none;

    PADDING-TOP: 0px

    }

    .h_14 {

    BACKGROUND-IMAGE: url(text_search.jpg);

    TEXT-ALIGN: left;

    PADDING-BOTTOM: 1px;

    LINE-HEIGHT: 26px;

    MARGIN-TOP: 3px;

    PADDING-LEFT: 4px;

    WIDTH: 245px;

    BACKGROUND-REPEAT: no-repeat;

    BACKGROUND-POSITION: center 50%;

    FLOAT: left;

    HEIGHT: 26px;

    MARGIN-LEFT: 3px;

    VERTICAL-ALIGN: middle;

    OVERFLOW: hidden;

    MARGIN-RIGHT: 3px;

    PADDING-TOP: 2px

    }

    .h_15 {

    BORDER-BOTTOM: 0px;

    BORDER-LEFT: 0px;

    PADDING-BOTTOM: 0px;

    LINE-HEIGHT: 20px;

    PADDING-LEFT: 0px;

    WIDTH: 240px;

    PADDING-RIGHT: 0px;

    DISPLAY: block;

    FLOAT: left;

    HEIGHT: 20px;

    MARGIN-LEFT: 0px;

    FONT-SIZE: 14px;

    VERTICAL-ALIGN: middle;

    BORDER-TOP: 0px;

    BORDER-RIGHT: 0px;

    PADDING-TOP: 4px

    }

    .h_16 {

    WIDTH: 57px;

    FLOAT: left;

    HEIGHT: 32px;

    OVERFLOW: hidden;

    CURSOR: pointer

    }

    .sokeyup {

    Z-INDEX: 10000;

    BORDER-BOTTOM: #000000 1px solid;

    POSITION: absolute;

    BORDER-LEFT: #000000 1px solid;

    WIDTH: 245px;

    DISPLAY: none;

    CLEAR: both;

    OVERFLOW: hidden;

    BORDER-TOP: #000000 1px solid;

    BORDER-RIGHT: #000000 1px solid

    }

    .sokeyup_1 {

    LINE-HEIGHT: 20px;

    PADDING-LEFT: 4px;

    WIDTH: 237px;

    PADDING-RIGHT: 4px;

    HEIGHT: 20px;

    CLEAR: both;

    OVERFLOW: hidden

    }

    .sokeyup_2 {

    LINE-HEIGHT: 20px;

    WIDTH: 140px;

    FLOAT: left;

    HEIGHT: 20px;

    COLOR: #4c4c4c

    }

    .sokeyup_3 {

    TEXT-ALIGN: right;

    LINE-HEIGHT: 20px;

    WIDTH: 97px;

    FLOAT: right;

    HEIGHT: 20px;

    COLOR: #008000

    }

    .sokeyup_4 {

    LINE-HEIGHT: 20px;

    WIDTH: 237px;

    HEIGHT: 20px

    }

    .sokeyup_5 {

    LINE-HEIGHT: 20px;

    FLOAT: right;

    HEIGHT: 20px;

    COLOR: #0000cc;

    CURSOR: pointer;

    TEXT-DECORATION: underline

    }

    JS:

    function so_search(){

    var kw = $("#kw").val();

    var kid = 0;

    var kname=$("#select_kid").html();

    kw = encodeURI(kw);

    if(kw == ''){

    alert("請輸入要查找的關(guān)鍵詞");

    }else{

    location.href="search-"+kw+".html";

    }

    }

    //關(guān)閉搜索提示

    function keyup_close(){

    $("#keyup_d").hide();

    }

    //

    function keyup_over(id){

    $("#u_"+id).css("background-color","#0000CC");

    $("#l_"+id).css("color","#fff");

    }

    function keyup_out(id){

    $("#u_"+id).css("background-color","#fff");

    $("#l_"+id).css("color","#000");

    }

    function keyup_click(id){

    $("#keyup_d").hide();

    var kw=$("#l_"+id).html();

    kw = encodeURI(kw);

    location.href="search-"+kw+".html";

    }

    function keyup(event){

    if(window.event){

    var key =window.event.keyCode;

    }else{

    var key =event.which;

    }

    if(key!=38&&key!=40&&key!=13){

    var kw=$("#kw").val();

    //跨域獲取搜索提示

    var url ="JsonHandler.ashx?kw=" + encodeURI(kw) + "&time=" + new Date().toString();//中文

    $.get(url,function(data){

    if (data!='') {

    $("#keyup_d").html(data+'<ul class="sokeyup_4"><li id="l_0" style="display:none;">

    </li><li class="sokeyup_5" onclick="keyup_close()">關(guān)閉</li></ul>');

    $("#keyup_d").show();

    } else {

    $("#keyup_d").hide();

    }

    }

    );

    }

    }

    var ul_id=0;

    $(window).keydown(function(event){

    if(window.event){

    var key =window.event.keyCode;

    }else{

    var key =event.which;

    }

    if (key==13) {

    if (searchFocus == true) {

    }

    }

    var ulcount=$("#keyup_d ul").size()-1;

    if($("#keyup_d").css("display")=="block"){

    //向上

    $("#l_0").html($("#kw").val());

    if(key==13) {

    if ($("#kw").val()!= "") {

    so_search();

    }

    }

    if (key==38) {

    ul_id--;

    if(ul_id<0){

    ul_id = ulcount;

    keyup_over(ul_id);

    }else{

    keyup_out(ul_id+1);

    keyup_over(ul_id);

    }

    $("#kw").val($("#l_"+ul_id).html());

    return false;

    }

    //向下

    if (key==40 ) {

    $("#l_0").html($("#kw").val());

    ul_id++;

    if(ul_id>ulcount){

    ul_id=0;

    keyup_out(ulcount);

    }else{

    keyup_out(ul_id-1);

    keyup_over(ul_id);

    }

    $("#kw").val($("#l_"+ul_id).html());

    return false;

    }

    }

    });

    ashx:

    <%@ WebHandler Language="C#" Class="JsonHandler" %>

    using System;

    using System.Web;

    using System.Data.SqlClient;

    using System.Data;

    public class JsonHandler : IHttpHandler {

    public void ProcessRequest(HttpContext context)

    {

    context.Response.ContentType = "text/plain";

    string Key = context.Request["kw"];

    if (Key !=null&&Key!="")

    {

    SqlConnection con = new SqlConnection("server=JUQI;database=NorthWind;uid=sa;pwd=sa;");

    con.Open();

    string str = "select distinct keyword,num from search where keyword like @kw order by keyword";

    SqlCommand com = new SqlCommand(str, con);

    com.Parameters.Add("@kw", SqlDbType.NVarChar).Value = "%"+ Key + "%";

    SqlDataReader sdr = com.ExecuteReader();

    string htmlstr = "";

    int i = 1;

    while (sdr.Read())

    {

    string kword = sdr["keyword"].ToString();

    string a = sdr["num"].ToString();

    htmlstr += "<ul class='sokeyup_1' onmouseover='keyup_over(" + i + ")'

    onmouseout='keyup_out(" + i + ")' onclick='keyup_click(" + i + ")' id='u_" + i + "'>";

    htmlstr += "<li class='sokeyup_2' id='l_" + i + "'>" + kword + "</li>";

    htmlstr += "<li class='sokeyup_3'>" + a + " 結(jié)果</li></ul>";

    i++;

    }

    context.Response.Write(htmlstr);

    context.Response.End();

    sdr.Close();

    con.Close();

    }

    }

    public bool IsReusable {

    get {

    return false;

    }

    }

    }

    更多信息請查看IT技術(shù)專欄

    更多信息請查看腳本欄目
    易賢網(wǎng)手機(jī)網(wǎng)站地址:jQuery+Ajax實(shí)現(xiàn)類似百度的搜索自動提示功能
    由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!

    2025國考·省考課程試聽報(bào)名

    • 報(bào)班類型
    • 姓名
    • 手機(jī)號
    • 驗(yàn)證碼
    關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡要咨詢 | 簡要咨詢須知 | 新媒體/短視頻平臺 | 手機(jī)站點(diǎn) | 投訴建議
    工業(yè)和信息化部備案號:滇ICP備2023014141號-1 云南省教育廳備案號:云教ICP備0901021 滇公網(wǎng)安備53010202001879號 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號
    云南網(wǎng)警備案專用圖標(biāo)
    聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號:hfpxwx
    咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
    云南網(wǎng)警報(bào)警專用圖標(biāo)