首頁 web前端 js教程 js實現帶有搜尋功能的下拉框即時搜尋即時匹配_javascript技巧

js實現帶有搜尋功能的下拉框即時搜尋即時匹配_javascript技巧

May 16, 2016 pm 05:17 PM
下拉框 搜尋功能

1. 當select輸入框中每輸入一點內容的時候,在option中找出與內容相符的選項顯示在option的前面選項中。
2. 如何取得每次輸入的內容,當keyup的時候觸發函數。
問題:select標籤中可以輸入內容嗎? (解決:另一篇文章可選擇和輸入的下拉列錶框 )
3. 如何取得輸入框中的內容? (解決,在輸入框上加入onkeyup時間觸發的函數用js獲得)
4. 如何匹配? (解決)
4.1 如何取得所有option中的內容? (解)

複製程式碼 程式碼如下:

function getSelectText()


function getSelectText()
{ 🎜>//取得所有select標籤
var object = document.getElementsByTagName('select');
//因為該html中只有一個select標籤,所以就是name = "aabb"代表的標籤
var obj = object[0];
//alert(obj.length);
//alert(obj[0]);
//保存所有option 的值
var allText;
for(i=0;i{
allText = obj[i].innerText ','; //關鍵在於透過option物件的innerText屬性取得選項文字
}
return allText;
}

4.2 js分割字串? (解決) 複製程式碼
程式碼如下:


var allText = SelectgetText()
>//alert(allText);
// 每個option的內容分割開來
var eachOptin = new Array();
eachOptin=allText.split(","); //字元分割

4.3 如何在js中配對? 複製程式碼
程式碼如下:


//如果option內容中有輸入的內容就回傳第一次匹配的位置(大於等於0),如果沒有匹配的就回傳-1
var flag = eachOptin[i].indexOf(shuru) ;


5. 如何讓匹配的內容顯示在option的前面的選項? (透過改變option的index編號)( 解決)
方法:當查到匹配的選項的時候,將第一個option重新新增到select最後,然後,將第一個的值重設為匹配的option的值,然後刪掉原始匹配的option
7. js 實現select標籤右邊三角的功能(未解決,當搜尋之後,直接顯示所有option選項可供選擇)
8.在匹配的option選項有多個的時候出現bedug,注意測試,和重新修改一下,應該是上面第五條中的邏輯問題
程式碼如下: 複製程式碼
程式碼如下:





檢定
<script> <BR>function onku() <BR>{ <BR>//取得input輸入框的內容<BR> var shuru = document.getElementById('ccdd').value; <BR>var object = document.getElementsByTagName('select'); <BR>var obj = object[0]; <BR>//如果輸入的內容為空,所有的選項都符合<BR>if(shuru!= '') <BR>{ <BR>//alert(shuru); <BR>//取得option中的所有內容<BR>var allText = getSelectText (); <BR>//alert(allText); <BR>// 每個option的內容分割開來<BR>var eachOptin = new Array(); <BR>eachOptin=allText.split(",") ; //字元分割<BR>var f = 1; <BR>for (i=1;i<eachOptin.length-1 ;i ) <BR>{ <BR>//alert(eachOptin[i]); <BR>//如果option內容中有輸入的內容就回傳第一次符合的位置(大於等於0),如果沒有符合的就回傳-1 <BR>var flag = eachOptin[i].indexOf(shuru) ; <BR>if(flag >=0) <BR>{ <BR>//alert(i); <BR>//將index為f的option重新新增一遍,顯示在最後<BR>obj.options. add(new Option(obj[i].innerText,obj[f].value)); <BR>//將編號為f的option重新賦值,賦值為符合條件的第一個option <BR>obj.options [f]=new Option(eachOptin[i],eachOptin[i]); <BR>//刪除原本存在的符合條件的option <BR>obj.remove(i); <BR>f ; <BR>} <BR>} <BR>} <BR>} <BR>function getSelectText() <BR>{ <BR>//取得所有select標籤<BR>var object = document.getElementsByTagName('select'); //因為該html中只有一個select標籤,所以就是name = "aabb"代表的標籤<BR>var obj = object[0]; <BR>//alert(obj.length); <BR>//alert (obj[0]); <BR>//保存所有option 的值<BR>var allText; <BR>for(i=0;i<obj.length;i ) <BR>{ <BR>//alert (obj[i].index);//取得option的index編號<BR>//alert(obj[i].value);//取得option的value的值<BR>allText = obj[i].innerText ','; //關鍵是透過option物件的innerText屬性取得到選項文字<BR>} <BR>return allText; <BR>} <BR></script>



onChange="javascript:document.getElementById('ccdd').value= document.getElementById('aabb').options[document.getElementById('aabb').selectedIndex].value;">







span>






注意程式碼中的註解
上面程式碼的運作結果如下:

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡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脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++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 Elasticsearch: 如何使用動態映射來實現靈活的搜尋功能? php Elasticsearch: 如何使用動態映射來實現靈活的搜尋功能? Sep 13, 2023 am 10:21 AM

PHPElasticsearch:如何使用動態映射來實現靈活的搜尋功能?引言:在開發現代化的應用程式時,搜尋功能是一個不可或缺的部分。 Elasticsearch是一個強大的搜尋和分析引擎,提供了豐富的功能和靈活的資料建模方式。在本文中,我們將重點放在如何使用動態映射來實現靈活的搜尋功能。一、動態映射簡介在Elasticsearch中,映射(mapp

HTML、CSS和jQuery:製作一個帶有搜尋功能的資料表格 HTML、CSS和jQuery:製作一個帶有搜尋功能的資料表格 Oct 26, 2023 am 10:03 AM

HTML、CSS和jQuery:製作一個帶有搜尋功能的資料表格在現代網頁開發中,資料表格是常用到的一種元素。而為了方便用戶查找和篩選數據,為數據表格添加搜尋功能成為了一個必不可少的功能。本文將介紹如何使用HTML、CSS和jQuery製作一個具有搜尋功能的資料表格,並提供具體的程式碼範例。一、HTML結構首先,我們需要建立一個基本的HTML結構來容納資料表格

如何使用PHP實現一個拼音首字母搜尋功能? 如何使用PHP實現一個拼音首字母搜尋功能? Sep 05, 2023 pm 04:10 PM

如何使用PHP實現一個拼音首字母搜尋功能?拼音首字母搜尋功能在許多應用中都非常常見,特別是在聯絡人清單或商品搜尋等場景中。本文將介紹如何使用PHP實作一個拼音首字母搜尋功能。拼音首字母搜尋功能的實現想法是:根據使用者輸入的關鍵字,透過將關鍵字與清單中的拼音首字母比對,從而篩選出符合條件的結果。首先,我們需要準備一個資料來源,可以是一個陣列或是資料庫表。以

如何利用PHP和Manticore Search開發強大的搜尋功能 如何利用PHP和Manticore Search開發強大的搜尋功能 Aug 06, 2023 am 10:13 AM

如何利用PHP和ManticoreSearch開發強大的搜尋功能概述:搜尋功能在現代應用程式開發中起著至關重要的作用。為了實現高效和準確的搜尋功能,利用合適的搜尋引擎是至關重要的。 ManticoreSearch是一種功能強大的全文搜尋引擎,它能夠提供高效能和可擴展的搜尋功能。本文將介紹如何利用PHP和ManticoreSearch開發強大的搜尋功能,並

如何在Vue中實作多選下拉框 如何在Vue中實作多選下拉框 Nov 07, 2023 pm 02:09 PM

如何在Vue中實作多選下拉框在Vue開發中,下拉框是常見的表單元件之一。通常情況下,我們都會使用單選下拉方塊來選擇一個選項。但是,有時候我們需要實作多選下拉框,以便使用者可以同時選擇多個選項。在本文中,我們將介紹如何在Vue中實作多選下拉框,並提供具體的程式碼範例。一、使用ElementUI元件庫ElementUI是一套基於Vue的桌面端元件庫,提供了豐富的UI

如何在Vue中實現搜尋功能 如何在Vue中實現搜尋功能 Nov 07, 2023 pm 03:45 PM

在實現前端功能的過程中,搜尋功能是一個常見的需求。 Vue作為一種流行的前端框架,也能很好地支援搜尋功能的實現。本文將為大家介紹如何在Vue中實現搜尋功能,並提供具體的程式碼範例。一、準備工作在實現搜尋功能之前,我們需要準備一個資料來源,也就是一些需要進行搜尋的資料。在本文的範例中,我們使用一個包含書籍資訊的陣列作為資料來源,格式如下:books:[{

利用PHP和Manticore Search開發雲端搜尋功能 利用PHP和Manticore Search開發雲端搜尋功能 Aug 05, 2023 pm 04:43 PM

利用PHP和ManticoreSearch開發雲端搜尋功能隨著網路的快速發展,使用者對於搜尋引擎的需求也變得越來越高。為了滿足用戶對搜尋功能的要求,開發一個高效率的搜尋引擎是非常關鍵的。本文將介紹如何利用PHP和ManticoreSearch開發雲端搜尋功能,並附加一些程式碼範例來幫助讀者更好地理解。 ManticoreSearch簡介ManticoreS

PHP開發實務:如何使用PHP和MySQL實作搜尋功能 PHP開發實務:如何使用PHP和MySQL實作搜尋功能 Jul 02, 2023 pm 08:31 PM

PHP開發實務:如何使用PHP和MySQL實作搜尋功能引言:在現代網路應用中,搜尋功能是非常常見且重要的功能之一。使用PHP和MySQL來實現搜尋功能,可以為使用者提供更好的使用者體驗和資料檢索能力。本文將介紹如何使用PHP和MySQL來實作搜尋功能,並提供對應的程式碼範例。一、建立資料庫和表格首先,我們需要建立一個資料庫,並在該資料庫中建立一個用於儲存搜尋相關

See all articles