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 相关文章推荐
javascript 面向对象编程 function也是类
Sep 17 Javascript
JavaScript/jQuery 表单美化插件小结
Feb 14 Javascript
判断文件是否正在被使用的JS代码
Dec 21 Javascript
搭建pomelo 开发环境
Jun 24 Javascript
JavaScript中获取鼠标位置相关属性总结
Oct 11 Javascript
JS+CSS实现实用的单击输入框弹出选择框的方法
Feb 28 Javascript
关于jquery中动态增加select,事件无效的快速解决方法
Aug 29 Javascript
D3.js实现雷达图的方法详解
Sep 22 Javascript
使用jQuery实现鼠标点击左右按钮滑动切换
Aug 04 jQuery
关于vue v-for循环解决img标签的src动态绑定问题
Sep 18 Javascript
关于layui flow loading占位图的实现方法
Sep 21 Javascript
vue实现随机验证码功能(完整代码)
Dec 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上传文件的增强函数
2010/07/21 PHP
PHP数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
2014/07/05 PHP
PHP实现微信小程序人脸识别刷脸登录功能
2018/05/24 PHP
HTML中Select不用Disabled实现ReadOnly的效果
2008/04/07 Javascript
jquery.validate使用攻略 第二部
2010/07/01 Javascript
纯JavaScript实现HTML5 Canvas六种特效滤镜示例
2013/06/28 Javascript
javascript自定义startWith()和endWith()的两种方法
2013/11/11 Javascript
JavaScript实现三阶幻方算法谜题解答
2014/12/29 Javascript
JavaScript中通过prototype属性共享属性和方法的技巧实例
2015/03/13 Javascript
jQuery检测返回值的数据类型
2015/07/13 Javascript
动态加载js、css的简单实现代码
2016/05/26 Javascript
详解vue项目首页加载速度优化
2017/10/18 Javascript
vue实例中data使用return包裹的方法
2018/08/27 Javascript
微信小程序开发之点击按钮退出小程序的实现方法
2019/04/26 Javascript
微信小程序云开发之模拟后台增删改查
2019/05/16 Javascript
Promise扫盲贴
2019/06/24 Javascript
微信小程序中如何计算距离某个节日还有多少天
2019/07/15 Javascript
微信小程序防止多次点击跳转(函数节流)
2019/09/19 Javascript
Element Input输入框的使用方法
2020/07/26 Javascript
Vue.extend 登录注册模态框的实现
2020/12/29 Vue.js
一个超级简单的python web程序
2014/09/11 Python
Python实现字符串匹配算法代码示例
2017/12/05 Python
Python基础教程之异常详解
2019/01/10 Python
Python JSON格式数据的提取和保存的实现
2019/03/22 Python
快速排序的四种python实现(推荐)
2019/04/03 Python
opencv python在视屏上截图功能的实现
2020/03/05 Python
New Era英国官网:美国棒球帽品牌
2018/03/21 全球购物
俄罗斯护发和专业化妆品购物网站:Hihair
2019/09/28 全球购物
标记环介质访问控制协议
2016/03/27 面试题
介绍一下XMLHttpRequest对象
2012/02/12 面试题
预防煤气中毒方案
2014/06/16 职场文书
2015年党风廉政建设目标责任书
2015/05/08 职场文书
《一面五星红旗》教学反思
2016/02/23 职场文书
win10安装配置nginx的过程
2021/03/31 Servers
python ansible自动化运维工具执行流程
2021/06/24 Python
pd.drop_duplicates删除重复行的方法实现
2022/06/16 Python