我在文档输入中使用
Bootstrap tags input来制作标签:
Just add data-role=”tagsinput” to your input field to automatically
change it to a tags input field.
但是在函数之前使用jquery时:
$('#addrun').click(function () { $('#addrun').before('<input type="text" value="Amsterdam,Washington,Sydney,Beijing" data-role="tagsinput" />'); });
任何帮助?
解决方法
Bootstrap在页面加载时作为自执行功能运行.通过向DOM添加一个新元素 – 到那时,bootstrap-tagsinput.js对它一无所知.因此,在通过JavaScript将其添加到DOM文档之后,您必须对其进行初始化.
刷新输入标签(Bootstrap Tagsinput Docs):
$('input').tagsinput('refresh');
所以对你来说,你需要:
/** * On <div id="addrun"> on click,* pre-apend it with an new Input * * Then refresh Bootstrap. **/ $('#addrun').click(function(){ $('#addrun').before( '<input type="text" '+ 'value="Amsterdam,Beijing" '+ 'data-role="tagsinput" />' ); //Now run bootstrap.js to re-search //new data-* elements $('input').tagsinput('refresh'); });
希望有所帮助!虽然,上面的$(‘input’)将刷新每个< input>在整个文档中标记,因此您可以改为提供前置< input>标记.class或#ID以便更快地访问=)
更新:
正如koala_dev在评论中正确提到的那样,你可能不需要通过$(‘selector’).tagsinput(‘refresh’)初始化它,而只是:
$('#selecor').tagsinput();
.tagsinput(‘refresh’)通常会对已经使用给定的新选项初始化的.tagsinput()输入执行操作.
原文地址:https://www.jb51.cc/bootstrap/233880.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。