我创建了这个函数,每当用户选中一个复选框时,该值的值被推入一个数组,然后它的值显示在一个名为" selections"的div中。对于每次连续检查,它将作为该显示中的文本加入。
我的问题是,如何围绕<span>
或<div>
中显示的每个文字值?我当前的例子是为第一个条目值而不是其他条件。
所以现在运行时看起来像这样:
<span>cbExample1</span>"cbExample2cbEample3"
第一个例子很好,但我想要围绕&#34; cbExample2&#34;和&#34; cbExample3&#34;标签。
代码如下:
var selections = [],
render_selections =
function() {
$('.selections').html("<span>"+selections.join('</span>'));
}
$('input[type="checkbox"]').change(function() {
$(this).each(function() {
var maxAllowed = 3;
var cnt = $("input[type='checkbox']:checked").length;
if (cnt <= maxAllowed) {
$('.selCount .counter').html(selReset-cnt);
selections = $.map($('input[type="checkbox"]:checked'), function(a) { return a.value; });
render_selections();
console.log(selections);
} else if (cnt > maxAllowed) {
$(this).prop("checked", "");
$(this).unbind("click");
$(this).css("cursor","default");
}
});
});
答案 0 :(得分:0)
假设:
selections = ['a','b','c'];
这一行:
$('.selections').html("<span>"+selections.join('</span>'));
将产生:<span>a</span>b</span>c
如果您将该行更改为:
$('.selections').html("<span>"+selections.join('</span><span>')+"</span>");
您将获得所需内容:<span>a</span><span>b</span><span>c</span>