本文介绍一个基于JavaScript实现的关键词标签输入组件,支持通过空格键添加标签、Backspace键删除标签以及鼠标失焦自动添加。组件提供面板ID、隐藏字段ID、最大数量及提示语等配置项,并附带完整示例代码与初始化方法说明,适用于需要简洁标签输入功能的前端场景。
关键词标签输入组件功能介绍
本文主要介绍如何使用JavaScript实现一个关键词标签输入效果,分享相关实现细节供参考。
该组件主要实现以下功能:
- 输入关键词后按下空格键,即可添加对应的tag标签。
- 按下Backspace键,可删除最近添加的一个标签。
- 当输入关键词后鼠标失去焦点时,自动添加当前输入的tag标签。
- 调用
keyWord.init方法进行初始化操作。
具体展示效果如下:

可查看demo演示地址。
示例代码与配置说明
以下是示例代码部分。
<style>
.block {
display:flex;
flex-direction:row;
align-items:center;
width:500px;
height:30px;
border:1px solid #ddd;
padding:10px;
margin:100px auto 0;
}
#wordTags {
display:flex;
flex-wrap:nowrap;
}
input{
width:100%;
height:20px;
border:none;
}
</style>
<div class="block">
<div id="wordTags"></div>
<input id="wordInput" type="text" name="" placeholder="请输入关键词以空格结尾">
<input id="wordHiddenInput" type="hidden" name="">
</div>
<script src="https://cdn.bootcss.com/jquery/1.12.4/jquery.js"></script>
<script type="text/javascript" src="aspect.js"></script>
<script type="text/javascript" src="keyWord.js"></script>
$(function () {
var keyWord = $("#wordInput").keyWord({
panel: '#wordTags',
value: '#wordHiddenInput',
max: 3,
tips: '最多只能输入3项'
});
keyWord.init('php,java,前端开发')
});
组件支持以下配置属性:
- panel:指定显示标签的面板元素ID。
- value:指定用于存储标签值的隐藏字段ID。
- max:设置最多允许输入的关键字个数。
- tips:当达到最大数量时显示的提示语。
总结。
以上为本文全部内容,希望能为您的学习或工作提供帮助。如有疑问欢迎留言交流,感谢支持。