亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

jQuery實(shí)現(xiàn)用戶輸入自動完成功能

原創(chuàng) 2017-02-16 11:06:49 807
摘要:利用jQuery UI中Auto-complete插件實(shí)現(xiàn)輸入自動完成功能,大家在使用諸如淘寶、京東等電商平臺搜索商品時,往往只要輸入商品的一些特殊字符,就可以顯示出和該字符相近的列表菜單,用戶使用鼠標(biāo)或者鍵盤方向鍵就可以快速選擇,實(shí)現(xiàn)了很好的用戶體驗(yàn)。1.最簡單的用戶輸入自動完成<!doctype html> <html lang="en"

利用jQuery UI中Auto-complete插件實(shí)現(xiàn)輸入自動完成功能,大家在使用諸如淘寶、京東等電商平臺搜索商品時,往往只要輸入商品的一些特殊字符,就可以顯示出和該字符相近的列表菜單,用戶使用鼠標(biāo)或者鍵盤方向鍵就可以快速選擇,實(shí)現(xiàn)了很好的用戶體驗(yàn)。

1.最簡單的用戶輸入自動完成

<!doctype html>
<html lang="en">
<head>
 <meta charset="utf-8">
 <title>jQuery UI Autocomplete - Default functionality</title>
 <link rel="stylesheet" href="http://code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css" rel="external nofollow" >
 <script src="http://code.jquery.com/jquery-1.10.2.js"></script>
 <script src="http://code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
 <script>
 $(function() {
 //定義并初始化字典庫數(shù)據(jù)源集合
 var availableTags = [
 "ActionScript",
 "AppleScript",
 "Asp",
 "BASIC",
 "C",
 "C++",
 "Clojure",
 "COBOL",
 "ColdFusion",
 "Erlang",
 "Fortran",
 "Groovy",
 "Haskell",
 "Java",
 "JavaScript",
 "Lisp",
 "Perl",
 "PHP",
 "Python",
 "Ruby",
 "Scala",
 "Scheme"
 ];
 //自動完成插件函數(shù)
 $( "#tags" ).autocomplete({
 //自動完成字典庫數(shù)據(jù)源
 source: availableTags
 });
 });
 </script>
</head>
<body>
<div class="ui-widget">
 <label for="tags">請輸入: </label>
 <input id="tags">
</div>
</body>
</html>

2 使用遠(yuǎn)程數(shù)據(jù)源自動完成

Auto-complete插件不光可以實(shí)現(xiàn)本地數(shù)據(jù)源的自動完成,也可以讀取遠(yuǎn)程的數(shù)據(jù)源,列如實(shí)現(xiàn)從服務(wù)器端讀取數(shù)據(jù)源信息。

通過將服務(wù)器數(shù)據(jù)緩存到瀏覽器中,獲取的數(shù)據(jù)源首先保存在cache變量中。

$(function() {
//自定義緩存變量
var cache = {};
//自動完成插件函數(shù)
$("#tags").autocomplete({
//定義用戶最少輸入的字符數(shù)
minLenght: 2,
source: function(request, response){//定義遠(yuǎn)程獲取數(shù)據(jù)源函數(shù)
var term = request.term;//定義用戶請求信息變量
if(term in cache) {//判斷請求數(shù)據(jù)是否存在緩存中
response(cache[term]);//真,從緩存中讀取數(shù)據(jù)
return;
}
$.getJSON('data.json', request, function(data, Status, xhr) {
cache[term] = data.result;//緩存遠(yuǎn)程數(shù)據(jù)
response(data.result);
});
}
});
});

更多關(guān)于jQuery實(shí)現(xiàn)用戶輸入自動完成功能請關(guān)注PHP中文網(wǎng)(ipnx.cn)其他文章!   


發(fā)布手記

熱門詞條