文本即将到来,一切正-6ren">
gpt4 book ai didi

Jquery .map().join (", ") 文本未加入逗号 (,)

转载 作者:行者123 更新时间:2023-11-30 23:53:03 25 4
gpt4 key购买 nike

我正在使用label和隐藏输入checkbox以及复选框的.change。我通过 Jquery .map() 获取标签文本,并希望使用 ,.join(",") 文本。 p>

文本即将到来,一切正常,但逗号 (,) 无论如何都不会到来。

I'm getting result Checkbox 1Checkbox 2Checkbox 5 and I want Checkbox 1, Checkbox 2, Checkbox 5

find fiddle demo

突出显示代码:

$(".combo").append( $(txt).map(function() {
return $(this).text();
}).get().join( " ," ) );

代码:

var checked = [];
$('input[type="checkbox"]').change(function(e) {
var num_checked = $('input[type="checkbox"]:checked').length;

if (num_checked > 3) {
checked[checked.length - 1].prop('checked', false);
if(checked[checked.length - 1].prop('checked', false)){
checked[checked.length - 1].parents('label').removeClass("active");
var et = checked[checked.length - 1].parents('label').text();
$('.combo').text(function () {
return $(this).text().replace(et, '');
});

}
checked.pop();
}
if($.inArray($(this), checked) < 0){
checked.push($(this));
if($(this).is(':checked')){
$(this).parents('label').addClass("active");
var txt = $(this).parents('label');
$(".combo").append( $(txt).map(function() {
return $(this).text();
}).get().join( " ," ) );

} else{
$(this).parents('label').removeClass("active-cb");
//$('.selectedSwitch').text('');
var qr = $(this).parents('label').text();
$('.combo').text(function () {
return $(this).text().replace(qr, '');
});
}
}
});

最佳答案

恐怕您在这里可能过度设计了您的解决方案。请参阅此简化版本:

$('input[type="checkbox"]').change(function(e) {
// just grab the labels for all checked inboxes...
var txt = $('input:checked').closest('label')
// then map that collection to their text values
.map(function() { return $(this).text(); })
// and format into your comma-delineated list
.get().join(', ');

$('.combo').text(txt);
});

您可以在此处查看它的实际效果:https://jsfiddle.net/usx8Lkc5/11/

关于Jquery .map().join (", ") 文本未加入逗号 (,),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35646453/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com