如何使用 Bootstrap 星级克隆元素
How to clone element using Bootstrap star rating
我正在使用 this 库在我的网站上进行评分。我遇到的问题是,在我单击按钮克隆#skill div 中的所有元素后,我无法单击该元素进行评分。我知道我需要在克隆后重新初始化插件。但我坚持这一点。
我有一个这样的div
<div class="sectionContent" id="skill">
<article class="skill">
<span contenteditable>-PHP</span>
<input class="rating" data-show-clear="false" data-show-caption="true" data-size="xs" data-show-caption="true" data-step="1">
</article>
</div>
并且 jquery 使用克隆
$('#btnAddSkill').click(function() {
$('.skill:first').clone().appendTo("#skill");
$(".rating:last").rating({
starCaptions: {1: "Kém", 2: "Yếu", 3: "Trung Bình", 4: "Khá", 5: "Tốt"},
starCaptionClasses: {1: "text-danger", 2: "text-warning", 3: "text-info", 4: "text-primary", 5: "text-success"},
size:'xs'
});
});
你的问题是当插件已经在输入上 运行 时你正在克隆容器,这会在输入周围创建很多包装器等。
您需要克隆 input
,然后将其包装成与原始 html 相同的方式,然后调用 .rating
。
$('#btnAddSkill').click(function() {
var article = $('<article />', {class:"skill"}).append('<span contenteditable="">-PHP</span>');
$('.rating:first').clone().appendTo("#skill").wrap(article);
$(".rating:last").rating({
starCaptions: {1: "Kém", 2: "Yếu", 3: "Trung Bình", 4: "Khá", 5: "Tốt"},
starCaptionClasses: {1: "text-danger", 2: "text-warning", 3: "text-info", 4: "text-primary", 5: "text-success"},
size:'xs'
});
});
我正在使用 this 库在我的网站上进行评分。我遇到的问题是,在我单击按钮克隆#skill div 中的所有元素后,我无法单击该元素进行评分。我知道我需要在克隆后重新初始化插件。但我坚持这一点。 我有一个这样的div
<div class="sectionContent" id="skill">
<article class="skill">
<span contenteditable>-PHP</span>
<input class="rating" data-show-clear="false" data-show-caption="true" data-size="xs" data-show-caption="true" data-step="1">
</article>
</div>
并且 jquery 使用克隆
$('#btnAddSkill').click(function() {
$('.skill:first').clone().appendTo("#skill");
$(".rating:last").rating({
starCaptions: {1: "Kém", 2: "Yếu", 3: "Trung Bình", 4: "Khá", 5: "Tốt"},
starCaptionClasses: {1: "text-danger", 2: "text-warning", 3: "text-info", 4: "text-primary", 5: "text-success"},
size:'xs'
});
});
你的问题是当插件已经在输入上 运行 时你正在克隆容器,这会在输入周围创建很多包装器等。
您需要克隆 input
,然后将其包装成与原始 html 相同的方式,然后调用 .rating
。
$('#btnAddSkill').click(function() {
var article = $('<article />', {class:"skill"}).append('<span contenteditable="">-PHP</span>');
$('.rating:first').clone().appendTo("#skill").wrap(article);
$(".rating:last").rating({
starCaptions: {1: "Kém", 2: "Yếu", 3: "Trung Bình", 4: "Khá", 5: "Tốt"},
starCaptionClasses: {1: "text-danger", 2: "text-warning", 3: "text-info", 4: "text-primary", 5: "text-success"},
size:'xs'
});
});