之前复制了ace的标签,发现加载的js文件比较多,所以自己就仿了它的自定义标签,和大家分享下。
HTML
<div class="tags" id="tags" tabindex="1"> <span class="tag"> Tag Input Control <button class="close" type="button">×</button> </span> <input id="form-field-tags" type="text" placeholder="Enter tags ..." value="Tag Input Control" name="tags" style="display: none;"/> <input type="text" placeholder="Enter tags ..." class="tags_enter" autocomplete="off"/> </div>
jQuery
$(function() {
$(".tags_enter").blur(function() { //焦点失去触发
addTag($(this));
$(this).parents(".tags").css({
"border-color": "#d5d5d5"
})
}).keydown(function(event) {
var key_code = event.keyCode;
if (key_code == 13) { //enter
addTag($(this));
}
});
$(".close").live("click",
function() {
$(this).parent(".tag").remove();
});
$(".tags").click(function() {
$(this).css({
"border-color": "#f59942"
})
}).blur(function() {
$(this).css({
"border-color": "#d5d5d5"
})
})
})
添加标签addTag()方法
function addTag(obj) {
var tag = obj.val();
if (tag != '') {
var i = 0;
$(".tag").each(function() {
if ($(this).text() == tag + "×") {
$(this).addClass("tag-warning");
setTimeout("removeWarning()", 400);
i++;
}
}) obj.val('');
if (i > 0) { //说明有重复
return false;
}
$("#form-field-tags").before("<span class='tag'>" + tag + "<button class='close' type='button'>×</button></span>"); //添加标签
}
}
提示:placeholder在ie8以下不兼容,后面我们会写一篇兼容ie低版本的placeholder,敬请关注。
系统已开启自动识别垃圾评论机制,识别到的自动封号,下载出错或者资源有问题请联系全栈客服QQ 1915635791