首頁 web前端 js教程 模擬一個類似百度google的模糊搜尋下拉清單_javascript技巧

模擬一個類似百度google的模糊搜尋下拉清單_javascript技巧

May 16, 2016 pm 04:52 PM
下拉清單 模糊搜尋

複製程式碼 程式碼如下:

// JavaScript Document
function onChangeh> >$("#searchtext").val($(thisLi).html());
$("#suggest_ul").hide(0);
validateform2();
}

$(function(){
//載入時隱藏下拉li
$("#suggest_ul").hide(0);
});

/ /Ajax 動態取得關鍵字

//監聽文字框輸入變化

function fuzzySearch(){

//建立ajax物件函數
function createLink(){
if(window.ActiveXObject){
var newRequest = new ActiveXObject("Microsoft.XMLHTTP");
}else{
var newRequest = new XMLHttpRequest();
}
}
return newRequest;
}

//如果文字方塊為空,不傳送請求
if($("#searchtext").val().length==0||$(" #searchtext").val().length>10){
$("#suggest_ul").hide(0);
return;
}
//發送請求
http_request = createLink();//建立一個ajax物件
if(http_request){
var sid = $("#searchtext").val();
var url = "contentSearchAction!getSynonyms.action" ;
var data = "keywords=" encodeURI(sid);
//alert(data)
http_request.open("post",url,true);
http_request.setRequestHeader("content -type","application/x-www-form-urlencoded");

//指定一個函數來處理從伺服器傳回的結果
http_request.onreadystatechange = dealresult; //此函數不要括號
//發送請求
http_request.send(data);
}

//處理回傳結果
function dealresult(){
if(http_request.readyState== 4){
//等於200表示成功
if(http_request.status==200){
if(http_request.responseText=="no"){
$("#suggest_ul") .hide(0);
return;

}
$("#suggest_ul").show(0);
var res = eval("(" http_request.responseText ") ");
var contents="";
for(var i=0;ivar keywords = res[i].keywords;
contents=contents "
  • " keywords "
  • ";

    }
    $("#suggest_ul") .html(contents);


    }
    }
    }

    }
    //老鼠
    $(function(){

    //按下按鍵後300毫秒顯示下拉提示
    $("#searchtext").keyup(function(){
    setInterval(changehover,300);
    function changehover(){
    $("#suggest_ul li").hover(function(){ $(this).css("background","#eee");},function(){ $(this).css("background", "#fff");});
    }
    });

    });

    頁:
    頁:頁:



    複製代碼


    代碼如下:






    searchSuggest












    使用的過程中發現一種情況不會去搜索,ios系統自帶的輸入法輸入中文的時候既不是onkeyup 也不是onchange事件,因為是用戶剛開始的按鈕是按的虛擬鍵盤,

    可以使用onkeyup 事件,當出現中文的時候點擊中文將輸入框裡面的值改變成了中文,onchange不能捕獲腳本改動的輸入框的值。

    最後的解決方法是 用oninput事件,這個是最新的html5 中的事件非常好用,只是有些低版的瀏覽器不能相容比較麻煩。
    本網站聲明
    本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

    熱AI工具

    Undresser.AI Undress

    Undresser.AI Undress

    人工智慧驅動的應用程序,用於創建逼真的裸體照片

    AI Clothes Remover

    AI Clothes Remover

    用於從照片中去除衣服的線上人工智慧工具。

    Undress AI Tool

    Undress AI Tool

    免費脫衣圖片

    Clothoff.io

    Clothoff.io

    AI脫衣器

    Video Face Swap

    Video Face Swap

    使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

    熱工具

    記事本++7.3.1

    記事本++7.3.1

    好用且免費的程式碼編輯器

    SublimeText3漢化版

    SublimeText3漢化版

    中文版,非常好用

    禪工作室 13.0.1

    禪工作室 13.0.1

    強大的PHP整合開發環境

    Dreamweaver CS6

    Dreamweaver CS6

    視覺化網頁開發工具

    SublimeText3 Mac版

    SublimeText3 Mac版

    神級程式碼編輯軟體(SublimeText3)

    如何在php中使用高德地圖API實現地點名稱的模糊搜索 如何在php中使用高德地圖API實現地點名稱的模糊搜索 Jul 31, 2023 pm 02:13 PM

    如何在PHP中使用高德地圖API實現地點名稱的模糊搜索概述:在開發一個基於地理位置的應用時,有時需要根據用戶輸入的地點名稱進行模糊搜索,並返回搜索結果。高德地圖提供了一套豐富的API,可以輕鬆實現這項功能。本文將介紹如何在PHP中使用高德地圖API實現地點名稱的模糊搜索,並為您提供程式碼範例。步驟:取得高德地圖API的開發者金鑰首先,您需要在高德地圖開放平台

    如何使用CSS製作下拉清單的自訂樣式效果 如何使用CSS製作下拉清單的自訂樣式效果 Oct 26, 2023 pm 12:22 PM

    如何使用CSS製作下拉清單的自訂樣式效果在網頁設計中,下拉清單(DropdownList)是常見的互動元素之一,它可以提供選項的選擇功能,方便使用者進行操作。然而,瀏覽器預設的下拉清單樣式可能無法滿足設計需求,因此需要使用CSS來進行自訂樣式的設定。本文將介紹如何使用CSS製作下拉清單的自訂樣式效果,並附有特定的程式碼範例。在建立基本的HTML結構首先,我

    如何使用Java程式碼在百度地圖上實現地點的模糊搜尋? 如何使用Java程式碼在百度地圖上實現地點的模糊搜尋? Jul 30, 2023 pm 11:31 PM

    如何使用Java程式碼在百度地圖上實現地點的模糊搜尋?隨著網路的發展,人們對於地理位置資訊的需求也越來越高。例如,我們可能需要透過關鍵字來搜尋附近的餐廳、飯店或其他特定的地點。百度地圖提供了豐富的地點搜尋功能,而使用Java程式碼結合百度地圖API可以很方便地實現地點的模糊搜尋。以下我們將介紹如何使用Java程式碼在百度地圖上實現地點的模糊搜尋。首先,我們需要

    PHP如何實作模糊搜尋功能 PHP如何實作模糊搜尋功能 Mar 06, 2024 am 11:15 AM

    在PHP中實現模糊搜尋功能是一項常見的需求,特別是在開發網站或應用程式中涉及搜尋功能時。模糊搜尋可以幫助使用者更快速準確地找到他們需要的資訊。以下將介紹如何在PHP中實作模糊搜尋功能,並提供具體的程式碼範例。 1.資料庫準備首先,我們需要有一個資料庫表,用來儲存我們要進行搜尋的資料。在本範例中,我們假設有一個名為products的表,包含以下欄位:id:產品I

    PHP表單處理:多選框、單選框和下拉清單使用技巧 PHP表單處理:多選框、單選框和下拉清單使用技巧 Aug 07, 2023 pm 11:29 PM

    PHP表單處理:多重選取框、單選框和下拉清單使用技巧在網頁開發中,表單是使用者與網站互動的重要方式之一。而表單中的多重選取框、單選框和下拉清單則是常見的一些使用者輸入選項。本文將介紹如何使用PHP處理這些表單元素,並給出對應的程式碼範例。多選框多選框允許使用者選擇多個選項。在HTML中,可以使用<inputtype="checkbox"&g

    模糊搜尋精準匹配,優酷'AI搜片”解決用戶找片難 模糊搜尋精準匹配,優酷'AI搜片”解決用戶找片難 Jan 08, 2024 am 10:25 AM

    你是否曾經遇過"找劇兩小時,吃飯五分鐘"的狀況?是否曾經為了某個劇情畫面而苦惱,卻忘了電影的名字?當代年輕人在追劇和觀影時,常會遇到"找片難"的問題。優酷今日推出了全網首個AI對話影視搜尋引擎-「AI搜片」。使用者只要在優酷APP的搜尋列中點選「AI」按鈕,即可進入對話頁面。透過模糊、口語化的提問,使用者可以準確地獲取影視訊息,並與AI進行全網影視知識的交流。這項功能的上線為用戶提供了更便利、智慧化的影視搜尋體驗。優酷最新推出的功能引起了網友們的熱議。網友們紛紛表示:「新功能太讚了!只要簡單

    PHP 中基於 Elasticsearch 的模糊搜尋與語意搜尋實現 PHP 中基於 Elasticsearch 的模糊搜尋與語意搜尋實現 Oct 03, 2023 am 08:37 AM

    PHP中基於Elasticsearch的模糊搜尋與語意搜尋實現,需要具體程式碼範例在現代網路環境下,搜尋功能已經成為了各種應用的必備功能之一。傳統的模糊搜尋往往只能按照關鍵字進行簡單的匹配,而缺乏了對使用者意圖的理解。而語意搜尋則可以更好地抓住使用者的意圖,從而提供更精確的搜尋結果。在本文中,我們將介紹如何在PHP中利用Elasticsearch

    如何在HTML中的下拉清單中包含一個選項? 如何在HTML中的下拉清單中包含一個選項? Sep 07, 2023 am 11:29 AM

    若要在下拉清單中包含選項,請使用HTML中的標記。 HTML標籤在表單中用來定義下拉清單中的選項。 HTML標籤也支援以下附加屬性-屬性值描述停用停用輸入控制項。該按鈕不會接受用戶的更改。它也無法接收焦點,並且在Tab鍵切換時會被跳過。標籤文字定義使用時使用的標籤。選定已選擇定義頁面載入時要選擇的預設選項。值文字指定傳送到伺服器的選項值範例您可以嘗試執行下列程式碼來實作HTML中的元素-<!DOCTYPEhtml><html>  <he

    See all articles