jQuery之自动完成组件的深入解析


Posted in Javascript onJune 19, 2013

简单实例

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>AutocompleteOption</title>
<link rel="stylesheet" type="text/css" href="themes/base/jquery.ui.all.css"/>
<script type="text/javascript" src="JS/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="JS/jquery.ui.core.js"></script>
<script type="text/javascript" src="JS/jquery.ui.widget.js"></script>
<script type="text/javascript" src="JS/jquery.ui.position.js"></script>
<script type="text/javascript" src="JS/jquery.ui.autocomplete.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 /* 初始化数据源 */
 var keys = ["jsp", "javascript", "jquery", "asp", "asp.net", "php",];
 $('#searchBox').autocomplete({
     source : keys,
  minLength : 2
 });
});
</script>
<style>
body{ padding:30px; }
</style>
</head>
<body>
<input id="searchBox" />
</body>
</html>

效果图:
jQuery之自动完成组件的深入解析
在上述代码中,在页面初始化的时候将页面上的输入框包装成jQuery对象,然后使用autocomplete()方法将其包装成自动完成组件,同时初始化其最小响应长度选项和数据源选项
2:自动完成组件的方法
有Search, Open, Focus, Select, Close, Change事件
   function(event, ui) {
      //event: 触发事件时的事件对象
    //ui, 是用户界面对象,ui.item是一个包含label和value属性的对象
  }

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>AutocompleteEvent</title>
<link rel="stylesheet" type="text/css" href="themes/base/jquery.ui.all.css"/>
<script type="text/javascript" src="JS/jquery-1.4.2.min.js"></script>
<script type="text/javascript" src="JS/jquery.ui.core.js"></script>
<script type="text/javascript" src="JS/jquery.ui.widget.js"></script>
<script type="text/javascript" src="JS/jquery.ui.position.js"></script>
<script type="text/javascript" src="JS/jquery.ui.autocomplete.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 /*
  初始化数据源
 */
 var keys = ["c++", "c#", "c",
    "java", "j2ee", "jsp", "javascript", "jquery",
    "asp", "asp.net",
    "ruby", "vb.net",  "visual basic", "vb",
    "photo shop", "php",
    "flax", "flash"];
 function GetValues(key){
  var ks = [];  if(key == "") return ks;  //如果关键字为空字符串,返回一个空集合
  for(var i = 0; i<keys.length; i++){
   if(keys[i].indexOf(key) == 0){
    ks[ks.length] = keys[i];
   }   
  }
  return ks;
 }
 $('#searchBox').autocomplete({
     source : [],
  search : function(event,ui){
   $('#searchBox').autocomplete(
    "option","source",GetValues($(this).val())
    );
  }
 });
});
</script>
<style>
body{padding-top:30px;}
td{ text-align:center; vertical-align:middle; padding:10px;}
#searchBox,#Search{ padding:2px; font-size:15px;}
#searchBox{width:220px;height:17px;}
#Search{width:80px;}
</style>
</head>
<body>
<table border="0" align="center">
<tr>
 <td colspan="2"><h1>My Search Engine</h1></td>
</tr>
<tr>
 <td><input id="searchBox" /></td>
 <td><button id="Search" >Search</button></td>
</tr>
</table>
</body>
</html>

效果图:
  jQuery之自动完成组件的深入解析
Javascript 相关文章推荐
jQuery+CSS 实现的超Sexy下拉菜单
Jan 17 Javascript
简约JS日历控件 实例代码
Jul 12 Javascript
JavaScript版TAB选项卡效果实例
Aug 16 Javascript
jQuery Masonry瀑布流插件使用详解
Nov 17 Javascript
JavaScript DOM进阶方法
Apr 13 Javascript
js实现仿微博滚动显示信息的效果
Dec 21 Javascript
使用Require.js封装原生js轮播图的实现代码
Jun 15 Javascript
js如何获取访问IP、地区、当前操作浏览器
Jul 23 Javascript
layui table设置某一行的字体颜色方法
Sep 05 Javascript
js神秘的电报密码 哈弗曼编码实现
Sep 10 Javascript
深入浅析vue中cross-env的使用
Sep 12 Javascript
Vue使用轮询定时发送请求代码
Aug 10 Javascript
jQuery之折叠面板的深入解析
Jun 19 #Javascript
jQuery之选择组件的深入解析
Jun 19 #Javascript
解析DHTML,JavaScript,DOM,BOM以及WEB标准的描述
Jun 19 #Javascript
JavaScript中把数字转换为字符串的程序代码
Jun 19 #Javascript
解析JavaScript中的标签语句
Jun 19 #Javascript
解析window.open的使用方法总结
Jun 19 #Javascript
解析js中获得父窗口链接getParent方法以及各种打开窗口的方法
Jun 19 #Javascript
You might like
php数据库连接
2006/10/09 PHP
利用PHP制作简单的内容采集器的代码
2007/11/28 PHP
jq的get传参数在utf-8中乱码问题的解决php版
2008/07/23 PHP
php使用MySQL保存session会话的方法
2015/06/18 PHP
用javascript实现无刷新更新数据的详细步骤 asp
2006/12/26 Javascript
Flow之一个新的Javascript静态类型检查器
2015/12/21 Javascript
微信小程序开发之圆形菜单 仿建行圆形菜单实例
2016/12/12 Javascript
使用Promise链式调用解决多个异步回调的问题
2017/01/15 Javascript
浅谈regExp的test方法取得的值变化的原因及处理方法
2017/03/01 Javascript
基于vue cli 通过命令行传参实现多环境配置
2018/07/12 Javascript
Node.js web 应用如何封装到Docker容器中
2020/09/01 Javascript
vue监听浏览器原生返回按钮,进行路由转跳操作
2020/09/09 Javascript
python访问sqlserver示例
2014/02/10 Python
python执行外部程序的常用方法小结
2015/03/21 Python
Go/Python/Erlang编程语言对比分析及示例代码
2018/04/23 Python
Python中分支语句与循环语句实例详解
2018/09/13 Python
Python中实例化class的执行顺序示例详解
2018/10/14 Python
Python跳出多重循环的方法示例
2019/07/03 Python
Django在admin后台集成TinyMCE富文本编辑器的例子
2019/08/09 Python
python 基于dlib库的人脸检测的实现
2019/11/08 Python
python学生信息管理系统实现代码
2019/12/17 Python
python dict乱码如何解决
2020/06/07 Python
Python web框架(django,flask)实现mysql数据库读写分离的示例
2020/11/18 Python
Python self用法详解
2020/11/28 Python
关于CSS Tooltips(鼠标经过时显示)的效果
2013/04/10 HTML / CSS
猎人靴英国官网:Hunter Boots
2017/02/02 全球购物
奥地利汽车配件店:Pkwteile.at
2017/03/10 全球购物
Lookfantastic俄罗斯:欧洲在线化妆品零售商
2019/08/06 全球购物
师范生实习个人的自我评价
2013/09/28 职场文书
家长寄语大全
2014/04/02 职场文书
承诺书范本
2015/01/21 职场文书
个人求职信格式范文
2015/03/20 职场文书
律政俏佳人观后感
2015/06/09 职场文书
毕业论文答辩稿范文
2015/06/23 职场文书
python 如何在 Matplotlib 中绘制垂直线
2021/04/02 Python
基于Python实现对比Exce的工具
2022/04/07 Python