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 相关文章推荐
ExtJS 2.0 GridPanel基本表格简明教程
May 25 Javascript
js的逻辑运算符 ||
May 31 Javascript
jquery 元素控制(追加元素/追加内容)介绍及应用
Apr 21 Javascript
jquery选择器之属性过滤选择器详解
Jan 27 Javascript
JavaScript打印网页指定区域的例子
May 03 Javascript
JavaScript数组常用操作技巧汇总
Nov 17 Javascript
JavaScript实现点击单元格改变背景色的方法
Feb 12 Javascript
JS/jquery实现一个网页内同时调用多个倒计时的方法
Apr 27 jQuery
详解Vue.js分发之作用域槽
Jun 13 Javascript
使用Vue制作图片轮播组件思路详解
Mar 21 Javascript
vue如何解决循环引用组件报错的问题
Sep 22 Javascript
Node.js fs模块(文件模块)创建、删除目录(文件)读取写入文件流的方法
Sep 03 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 第二节 数据类型之转换
2012/04/28 PHP
Laravel框架基于ajax实现二级联动功能示例
2019/01/17 PHP
JavaScript 使用技巧精萃(.net html
2009/04/25 Javascript
JavaScript 常用函数库详解
2009/10/21 Javascript
javascript 基础篇2 数据类型,语句,函数
2012/03/14 Javascript
jquery如何判断某元素是否具备指定的样式
2013/11/05 Javascript
基于jquery实现在线选座订座之影院篇
2015/08/24 Javascript
基于jQuery Bar Indicator 插件实现进度条展示效果
2015/09/30 Javascript
基于JavaScript怎么实现让歌词滚动播放
2015/11/03 Javascript
Bootstrap每天必学之缩略图与警示窗
2015/11/29 Javascript
JS结合bootstrap实现基本的增删改查功能
2016/07/22 Javascript
js提示框替代系统alert,自动关闭alert对话框的实现方法
2016/11/07 Javascript
chorme 浏览器记住密码后input黄色背景处理方法(两种)
2017/11/22 Javascript
js实现旋转木马轮播图效果
2020/01/10 Javascript
Python中的迭代器漫谈
2015/02/03 Python
Python开发如何在ubuntu 15.10 上配置vim
2016/01/25 Python
详解Python中类的定义与使用
2017/04/11 Python
python爬虫的数据库连接问题【推荐】
2018/06/25 Python
Python3.5内置模块之random模块用法实例分析
2019/04/26 Python
Python如何优雅删除字符列表空字符及None元素
2020/06/25 Python
django rest framework 过滤时间操作
2020/07/12 Python
Python模块zipfile原理及使用方法详解
2020/08/04 Python
HTML5 Canvas的性能提高技巧经验分享
2013/07/02 HTML / CSS
俄罗斯的精英皮具:Wittchen
2018/01/29 全球购物
介绍一下sql server的安全性
2014/08/10 面试题
毕业生个人的求职信范文
2013/12/03 职场文书
测绘专业大学生职业生涯规划书
2014/02/10 职场文书
个人四风问题整改措施思想汇报
2014/10/04 职场文书
电工实训报告总结
2014/11/05 职场文书
优秀教师先进材料
2014/12/16 职场文书
青岛导游词
2015/02/12 职场文书
中班下学期个人总结
2015/02/12 职场文书
民间借贷纠纷起诉书
2015/08/03 职场文书
python实现简单石头剪刀布游戏
2021/10/24 Python
MySQL创建管理HASH分区
2022/04/13 MySQL
JS轻量级函数式编程实现XDM三
2022/06/16 Javascript