模拟邮箱输入邮箱地址、收藏标签。input框输入内容后回车,内容显示成小方块并带删除按钮。
模拟邮箱输入邮箱地址、收藏标签:
文本框输入文字后按回车键或者分号键,输入框中的文字变成小块并带删除按钮和操作。
页面代码:
<!DOCTYPE html>
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%
String ctxPath = request.getContextPath();
request.setAttribute("ctxpath", ctxPath);//项目根路径
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="${ctxpath}/js/jquery-1.11.3.min.js"></script>
<%-- <link href="${ctxpath}/css/main.css" rel="stylesheet"> --%>
<title>首页</title>
<style type="text/css">
div.tagsinput{
border: 1px solid gray;
width: 500px;
}
div.tagsinput span.tag {
border: 1px solid #a5d24a;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
display: block;
float: left;
padding: 5px;
text-decoration: none;
background: #cde69c;
color: #638421;
margin-right: 5px;
margin-bottom: 5px;
font-family: helvetica;
font-size: 13px;
} div.tagsinput span.tag {
padding: 0;
margin: 2px 2px;
background-color: #a7cced;
border-color: #a7cced;
}
div.tagsinput span.tag>span{
color: #247dd2;
padding-right: 5px;
} div.tagsinput span.tag a {
font-weight: bold;
color: #82ad2b;
text-decoration: none;
font-size: 11px;
} div.tagsinput span.tag a {
margin-right: 3px;
color: #247dd2;
font-size: 16px;
} #headTitle img{
width: 150px;
height: 50px;
} #tagInput{
width: 498px;
border: none;
height: 25px;
}
</style>
<script type="text/javascript">
$(function(){
//输入内容回车、分号后显示处理
$('#tagInput').bind('keyup',function(event){
if(event.keyCode == "13" || event.keyCode == "186") {
if($("#tagInput").val() == ""){
return false;
}
var value = $("#tagInput").val();
//去掉分号
value = value.replace(/;/g,"");
var inputDiv = $("#inputDiv");
//onclick='del(this)' 此处不适用在标签里面加函数,而是使用标签绑定click事件。
var str = "";
str += "<span class='tag'>";
str += "<span>";
str += ""+value+"";
str += "</span>";
str += "<a href='#' title='Removing tag' >x</a>";
str += "</span>";
//inputDiv.before("<span class='tag'><span>"+$("#tagInput").val()+" </span><a href='#' title='Removing tag' >x</a></span>");
inputDiv.before(str); $("#tagInput").val("");
} });
/* $("div.tagsinput span.tag a").bind("click",function(e){
alert("c");
}); */
/* var del = $("div.tagsinput span.tag a");
debugger; */
/* $("div.tagsinput span.tag").bind("click",function(){
alert("这个段落被点击了。");
}); */
/* $("a").click(function(){
alert("aa");
}); */
//删除标签删除操作。只有.on方式绑定事件在新添加的html元素中才起作用。
$("#tagInputDiv").on("click","a",function(){
$(this).parent(".tag").remove();
});
});
/* function del(param){
$(param).parent().remove();
} */
</script>
</head>
<body>
<h1 id="headTitle">一直在模仿从未被超越<img alt="腾讯官网" src="${ctxpath}/img/tencentLogo.jpg"></h1>
<table>
<tr>
<td>
仿<font color="red">博客园</font>[收藏标签]☺
</td>
</tr>
<tr>
<td>标签:</td>
<td>
<div id="tagInputDiv" class="tagsinput">
<!-- <span class="tag"><span>12211221 </span><a href="#" title="Removing tag">x</a></span> -->
<div id="inputDiv">
<input id="tagInput" type="text">
</div>
</div>
</td>
</tr>
</table>
</body>
</html>
模拟邮箱输入邮箱地址、收藏标签。input框输入内容后回车,内容显示成小方块并带删除按钮。的更多相关文章
- input框输入金额显示千分位
比如输入:1000000,则显示为1,000,000(或者是保留3位小数:1,000,000.000) 知识点: 1)JavaScript parseFloat() 函数: 定义:parseFloat ...
- js input框输入1位数字后自动跳到下一个input框聚焦
// input框输入1位数字后自动跳到下一个input聚焦 function goNextInput(el){ var txts = document.querySelectorAll(el); f ...
- js控制input框输入数字时,累计求和
input框输入数字时,自动开始计算累加 <div class="form-group"> <label for="inputPassword3&quo ...
- input框输入手机号码分隔显示
在input框输入手机号码时,自动加入空格按照3,4,4位显示,如: 实现方法如下: <label>手机号码</label><input type="text& ...
- 基于Element-UI的el-table,input框输入实现排序功能
最终效果如下 实现要求: 如果输入的内容不是非负整数,那么提示报错,并且将值变为输入前的内容: 如果输入正确,则当输入的内容发生改变并且失去焦点以后,触发事件,重新获取列表: 实现思路 使用原生的in ...
- input 框输入数字相关
input框限制只能输入正整数,逻辑与和或运算 有时需要限制文本框输入内容的类型,本节分享下正则表达式限制文本框只能输入数字.小数点.英文字母.汉字等代码. 例如,输入大于0的正整数 代码如下: &l ...
- JavaScript input框输入实时校验
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- 当input框输入到限定长度时,自动focus下一个input框
需求背景 需要输入一串15位的数字,但是要分为3个输入框,每个输入框限定长度5位,当删除当前输入框的内容时,focus到上一个输入框: 实现方法 var field = $('.phone-fiel ...
- autocomplete 属性 清除input框输入存留历史值,防止下拉历史值显示
autocomplete 属性规定输入字段是否应该启用自动完成功能. 自动完成允许浏览器预测对字段的输入.当用户在字段开始键入时,浏览器基于之前键入过的值,应该显示出在字段中填写的选项. 注释:aut ...
随机推荐
- [MySQL] 统计函数记录
时间段统计========== 按年汇总,统计:select sum(mymoney) as totalmoney, count(*) as sheets from mytable group by ...
- ubuntu16.04 安装 docker
1,切换到root 2,更新系统 # apt-get update 3,安装 https和ca证书 # apt-get install apt-transport-https ca-certifica ...
- 原生javascript实现文件异步上传
效果图: 代码:(demo33.jsp) <%@ page contentType="text/html;charset=UTF-8" language="java ...
- WCF(一)控制台寄宿
WCF是微软开发的一款通信框架.具有跨平台跨操作系统的特点,所以,WCF一般用于开发第三方接口或者在分布式系统用做数据交互. WCF三要素分别是地址(Address).绑定(Binding).契约(C ...
- Windows2003 安装MVC4 环境的步骤
一.作为部署服务器的安装步骤 1.服务器上安装SP2 和 IIS6 2.安装.Net Framework3.5 SP1(完整安装包,包含2.0 2.0SP1,237MB那个安装包) 3.安装.Net ...
- 『转』How to Think About Your Career
开始工作的伊始,逐渐转载及阅读Medium上知名华裔设计师Julie Zhuo的文章,这是她在medium上的介绍:Product design VP @ Facebook. Lover of foo ...
- runloop源代码
https://github.com/zzf073/runloopDemo /** * 调度例程 * 当将输入源安装到run loop后,调用这个协调调度例程,将源注册到客户端(可以理解为其他线程 ...
- (转)JobTracker和TaskTracker概述
一 概述: (1)Hadoop MapReduce采用Master/Slave结构. *Master:是整个集群的唯一的全局管理者,功能包括:作业管理.状态监控和任务调度等,即MapReduce中的J ...
- WebAssembly学习(二):Windows10下WebAssembly C/C++编译环境的搭建与Hello World尝试
首先,不论是在Windows.Linux还是Mac上,Webassembly的编译都是主要依赖于Emscripten SDK这个工具的.但是,在这里必须要吐槽一下,不论是WebAssembly官网.W ...
- Set&Map区别Array
Set&Map区别Array 在Set内部,两个NaN是相等.两个对象总是不相等的.可以用length来检测 四个操作方法: add(value):添加某个值,返回Set结构本身. delet ...