添加标签——无给定标签选项
HTML:
1 <!-- input输入标签,请以英文逗号分开 --> 2 <input type="text" placeholder="请以英文逗号分开" id="tagvalue" value="Prosper,Lee,无敌,的,存在" /> 3 4 <!-- 添加标签 --> 5 <button id="addbtn">无标签选项的添加标签</button> 6 7 <hr /> 8 9 <!-- 添加标签 --> 10 <div id="tags"></div>
CSS:
1 #tags span { 2 display: inline-block; 3 padding: 0 0 0 10px; 4 margin: 2px 5px; 5 border: 1px solid #000; 6 } 7 8 #tags span::after { 9 content: "x"; 10 display: inline-block; 11 padding: 0 10px; 12 background-color: #00ffff; 13 margin-left: 5px; 14 }
JavaScript:
1 var tagsStr = document.getElementById('tagvalue').value; // 含有英文逗号分割的字符串 2 3 var arr; // 接受标签函数的返回值 4 5 document.getElementById('addbtn').onclick = function() { arr = addTags(tagsStr, "tags") }; // 添加标签按钮 6 7 /** 8 * [添加删除标签] 9 * @author ProsperLee 10 * @param {[string]} tagsStr [含有英文逗号分割的字符串] 11 * @param {[string]} addTagsId [需要添加标签的HTML标签id] 12 * @return {[array]} [含有的标签数组,可用变量接收] 13 */ 14 function addTags(tagsStr, addTagsId) { 15 16 var tagsArr = tagsStr.split(","); // 以英文逗号分割标签 17 18 document.getElementById(addTagsId).innerHTML = ""; // 初始化标签展示区域,避免每次点击都append 19 20 for (var i = 0; i < tagsArr.length; i++) { 21 22 document.getElementById(addTagsId).innerHTML += "<span>" + tagsArr[i] + "</span>"; 23 24 } 25 26 // 删除标签 27 var len = document.getElementById(addTagsId).children.length; 28 29 for (var i = 0; i < len; i++) { 30 31 document.getElementById(addTagsId).children[i].onclick = function() { 32 33 this.remove(); // 删除当前标签 34 35 tagsArr.splice(tagsArr.indexOf(this.innerHTML), 1); // 从数组中删除该元素 36 37 return tagsArr; // 点击删除后的标签数组 38 39 }; 40 41 } 42 43 return tagsArr; // 没有点击删除时的标签数组 44 45 }
留下你的足迹求推荐呦
关注公众号
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
-
上一篇
javascript基础修炼(1)——一道十面埋伏的原型链面试题
在基础面前,一切技巧都是浮云。 题目是这样的 要求写出控制台的输出. function Parent() { this.a = 1; this.b = [1, 2, this.a]; this.c = { demo: 5 }; this.show = function () { console.log(this.a , this.b , this.c.demo ); } } function Child() { this.a = 2; this.change = function () { this.b.push(this.a); this.a = this.b.length; this.c.demo = this.a++; } } Child.prototype = new Parent(); var parent = new Parent(); var child1 = new Child(); var child2 = new Child(); child1.a = 11; child2.a = 12; parent.show(); child1.show(); child2.s...
-
下一篇
添加标签——给定标签选项
HTML: 1 <h3>haveTags</h3> 2 <div id="havetags"></div> 3 <hr /> 4 <h3>addTags</h3> 5 <div id="addtags"></div> 6 <button id="btn">返回的数组</button> CSS: 1 #havetags span, 2 #addtags span { 3 display: inline-block; 4 padding: 0 0 0 10px; 5 margin: 2px 5px; 6 border: 1px solid #000; 7 } 8 9 #havetags span::after, 10 #addtags span::after { 11 content: "+"; 12 display: inline-block; 13 padding: 0 10px; 14 background-color: #00ffff; 15 m...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS关闭SELinux安全模块
- Dcoker安装(在线仓库),最新的服务器搭配容器使用
- CentOS8编译安装MySQL8.0.19
- Windows10,CentOS7,CentOS8安装Nodejs环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS7,8上快速安装Gitea,搭建Git服务器



微信收款码
支付宝收款码