實現input輸入時智慧型搜尋

2022-09-18 05:54:18 字數 1619 閱讀 9426

//

智慧型搜尋

function osearchsuggest(searchfuc)

) }

var hidesuggest =function() //

傳送請求,根據關鍵字到後台查詢

var sendkeyword = function(event

) }

else

}else

if(event.keycode == 40

)

}else

} //

輸入字元 }

else

searchfuc(valtext);

key =valtext;

} }

//請求返回後,執行資料展示

this.datadisplay =function(data)

//往搜尋框下拉建議顯示欄中新增條目並顯示

varli;

var tmpfrag =document.createdocumentfragment();

suggestwrap.find('ul

').html(''

);

for(var i=0; i)

suggestwrap.find('ul

' suggestwrap.show();

//為下拉選項繫結滑鼠事件

suggestwrap.find('li'

).hover(function(),function()).bind(

'click

',function());

} init();

}; //

例項化輸入提示的js,引數為進行查詢操作時要呼叫的函式名

var searchsuggest = new

osearchsuggest(sendkeywordtoback);

//這是乙個模似函式,實現向後台傳送ajax查詢請求,並返回乙個查詢結果資料,傳遞給前台的js,再由前台js來展示資料。本函式由程式設計師進行修改實現查詢的請求

//引數為乙個字串,是搜尋輸入框中當前的內容

function sendkeywordtoback(keyword)

//步驟:

//1.讀取搜尋框中的內容$("#搜尋框id").val() (這個是jquery方式讀取,用js方式也一樣)

//2.用ajax非同步請求(非同步的話不會卡,資料量不大的話同步也行),這時候一般需要資料庫返回所需的內容,接下來就在ajax的success中操作了。

中:將讀取到的返回值data解析,分別儲存在相應的變數中。

//4.你可以選擇使用datatable外掛程式將解析出來的資料顯示出來,或者使用標籤,然後用

//for(var i in datas)

//tr = "" + tr + "";

////

}方式將資料加上去

mui.init(

});

注釋:

$('#in'); 為input

$('#gov_search_suggest');為智慧型搜尋時出現的ul區域。
主要**摘錄一匿名大神

INPUT游標輸入時大小

ie 不管該行有沒有文字,游標高度與font size一致。ff 該行有文字時,游標高度與font size一致。該行無文字時,游標高度與input的height一致。chrome 該行無文字時,游標高度與line height一致 該行有文字時,游標高度從input頂部到文字底部 這兩種情況都是在...

前端實現輸入框input輸入時,呼叫後台查詢。

這幾天做了乙個前端html頁面,基於bootstrap框架開發,裡面有個需求就是在輸入框中輸入字母或者文字時,下拉框自動重新整理模糊查詢出的資訊。最初我的想法是監控鍵盤上的按鍵輸入,每次輸入乙個字母後,傳送非同步請求至服務端進行資料查詢。但是後來發現,這種方式做出來會有乙個問題,就是這個監控是全域性...

關於 input 輸入搜尋的優化

很多時候我們都會利用 input 的 change 事件做搜尋功能,如果觸發 change 事件不做處理就直接去請求資料或者處理資料會做很多次操作,所以我們在 change 事件裡面需要做個處理減少資料的請求或處理次數。var searchtimeout,delaytime 400,submitse...