Javascript 如何在jquery中使用join将单个文本包围在标记中
我创建了这个函数,每当用户选中复选框时,该复选框中的值就会被推送到一个数组中,然后它的值就会显示在一个名为“selections”的div中。对于每个连续的检查,这将作为文本连接到该显示中 我的问题是,如何围绕Javascript 如何在jquery中使用join将单个文本包围在标记中,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我创建了这个函数,每当用户选中复选框时,该复选框中的值就会被推送到一个数组中,然后它的值就会显示在一个名为“selections”的div中。对于每个连续的检查,这将作为文本连接到该显示中 我的问题是,如何围绕或中显示的每个文本值?我当前的示例对第一个条目值执行此操作,但对其他条目值不执行此操作 因此,当前运行时看起来是这样的: <span>cbExample1</span>"cbExample2cbEample3" cbExample1“cbExample2cbEam
或
中显示的每个文本值?我当前的示例对第一个条目值执行此操作,但对其他条目值不执行此操作
因此,当前运行时看起来是这样的:
<span>cbExample1</span>"cbExample2cbEample3"
cbExample1“cbExample2cbEample3”
第一个示例很好,但我想用标记围绕“cbExample2”和“cbExample3”
代码如下:
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");
}
});
});
var选择=[],
渲染_选择=
函数(){
$('.selections').html(“+selections.join(“”));
}
$('input[type=“checkbox”]”)。更改(函数(){
$(this).each(function(){
var最大允许值=3;
var cnt=$(“输入[type='checkbox']:选中”).length;
如果(cnt最大允许值){
$(this.prop(“选中”和“”);
$(此)。解除绑定(“单击”);
$(this.css(“游标”、“默认值”);
}
});
});
假设:
selections = ['a','b','c'];
这一行:
$('.selections').html("<span>"+selections.join('</span>'));
$('.selections').html(“+selections.join(“”));
将产生:abc
如果将该行更改为:
$('.selections').html("<span>"+selections.join('</span><span>')+"</span>");
$('.selections').html(“+selections.join”(“)+”);
你会得到你想要的:
abc
你想用一个结束标记,然后是下一个开始标记加入他们…然后在前面放一个开始标记,在后面放一个结束标记。