javaScript输入框关键字添加,并且加入了jquery自动补全功能
来源:互联网 发布:php s3 编辑:程序博客网 时间:2024/05/29 13:44
第一步:封装好的js代码
(function(){ var setting; $.fn.keywordinput=function(opts){ setting=$.extend({ number:3, msg:"请输入标签,通过分号确认" },opts||{}); init(this); $(this).keyup(inputKeyWord); //事件委派新增的节点也能调用createKeyword方法 $("#keywords-wrap").on("click","a.keyword-shut",function(event){ $(this).parent().parent(".keyword-in").remove(); event.preventDefault(); }); } //初始化方法 function init(obj){ var that=obj; $(that).val(setting.msg);//初始化消息 $(that).addClass("keyword-input");//初始化css样式 $(that).wrap("<div id='keyword-container'></div>").before("<div id='keywords-wrap'></div>"); $(that).focus(function(){ $(this).val(""); }); $(that).blur(function(){ $(this).val(setting.msg); }); } //键盘输入事件 function inputKeyWord(event){ var code=event.keyCode;if(code==186){var c=$(this).val();if($(".keyword-in").length>=3){ layer.msg('最多只能输入3个标签!',{icon:2,time:1000});event.preventDefault();return;}var ks=$("input[name='ks']");for(var i=0;i<ks.length;i++){if(ks[i].value==c){layer.msg('不能添加重复的标签!',{icon:2,time:1000});event.preventDefault();return;}}if(c!=""){ var el=createKeyword(c); $("#keywords-wrap").append(el); $(this).val("");}} } //创建新增标签 function createKeyword(val){return "<div class='keyword-in'><span>"+val+"<a href='#' class='keyword-shut'>x</a></span><input type='hidden' name='ks' value='"+val+"'> </div>"; }})(jQuery)第二步:css样式文件
#keyword-container{ border:1px solid #bbb; width: 300px; padding: 5px; }.keyword-input{ border:none; width:298px; color:#aaa; height:30px; } div.keyword-in{ float: left; font-size: 12px; margin:3px; background: #3fa7cb; padding: 3px; color:#ffff; } a.keyword-shut:LINK,a.keyword-shut:VISITED { color:#fff; text-decoration: none; margin-left: 3px;}a.keyword-shut:HOVER { color: #732;}
第三步:jsp页面
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title><link rel="stylesheet" type="text/css" href="http://localhost:8081/static/plugins/jquery-ui/jquery-keyword.css" /><script type="text/javascript" src="http://localhost:8081/static/plugins/jquery/1.9.1/jquery.min.js"></script><script type="text/javascript" src="http://localhost:8081/static/plugins/jquery-ui/jquery-keyword.js"></script><script type="text/javascript">$(function(){ $("#keyword-input").keywordinput();});</script></head><body> <input type="text" id="keyword-input" value="请输入标签,通过分号或者回车确认"> </body></html>
效果图:
第四步:加入jquery-ui自动补全插件官网地址http://jqueryui.com/demos/下载相应的版本,我这里下载版本的是jquery-ui-1.10.4
jsp需要引入jquery.min.js、 jquery-ui-1.10.4.custom.min.css、jquery-ui-1.10.4.custom.min.js 注意顺序,先引入jquery的js,可参考官网的Demo
效果图:
jsp页面
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Insert title here</title><link rel="stylesheet" type="text/css" href="${admin_domain}/static/plugins/jquery-ui/jquery-keyword.css" /><link rel="stylesheet" type="text/css" href="${admin_domain}/static/plugins/jquery-ui/jquery-ui-1.10.4.custom.min.css" /><script type="text/javascript" src="${admin_domain}/static/plugins/jquery/1.9.1/jquery.min.js"></script><script type="text/javascript" src="${admin_domain}/static/plugins/jquery-ui/jquery-keyword.js"></script><script type="text/javascript" src="${admin_domain}/static/plugins/jquery-ui/jquery-ui-1.10.4.custom.min.js"></script><script type="text/javascript">$(function(){$( function() {$("#keyword-input").keywordinput(); $( "#keyword-input" ).autocomplete({ source: function( request, response ) { $.ajax( { url: '${admin_domain}/ajax/tagsByName', dataType: "json", data: { term: request.term }, success: function( data ) { response( data ); } } ); } }); });});</script></head><body> <input type="text" id="keyword-input" value="请输入标签,通过分号或者回车确认"> </body></html>
0 0
- javaScript输入框关键字添加,并且加入了jquery自动补全功能
- 输入框自动补全功能
- 基于jquery实现输入框的自动补全功能
- jquery的输入框自动补全功能+ajax
- 【输入智能提示功能】PHP+jQuery实现自动补全功能
- 【输入智能提示功能】PHP+jQuery实现自动补全功能
- jQuery Autocomplete 自动补全功能
- jQuery Autocomplete 自动补全功能
- Jquery实现自动补全功能
- c#TextBox输入框自动提示、自动补全功能
- 实现输入框自动补全功能,类似于google suggest
- Eclipse 实现关键字自动补全功能
- 搜索引擎的输入自动补全功能
- 为uBoot添加命令自动补全功能
- 【随笔】eclipse cdt 添加自动补全功能
- Myeclipse 8.6 增加 jquery 自动补全功能
- 自动补全功能(jquery应用5)
- jQuery类似谷歌自动补全功能
- @ResponseBody返回json的局限性
- 移动端界面的适配
- mongodb操作
- centos忘记root密码,重新设置的方法
- Teamviewer“未就绪,请检查您的连接”的最终解决办法
- javaScript输入框关键字添加,并且加入了jquery自动补全功能
- ios打印NSInteger的时候去除警告
- 6.0动态加载权限用PermissionGen
- MySQL
- 获取一个类的class对象的方法
- Mybatis
- 第四十讲项目三 鸡兔同笼
- node.js path总结
- AJAX——核心XMLHttpRequest对象