Javascript 添加和删除输入复选框的值

Javascript 添加和删除输入复选框的值,javascript,jquery,html,Javascript,Jquery,Html,我编写的脚本(当然是在帮助下编写的)允许用户选择复选框,并将所选框的值添加到输入中,以逗号分隔 $(文档).ready(函数(){ 变量=1 $(“#添加”)。单击(函数(){ var元素=$(“.test.hidden”).clone(true); var testInputs=element.find(“.testInputs”)。单击(clickHandler); testInputs.attr(“唯一索引”,变量); var target=element.find('.user_inp

我编写的脚本(当然是在帮助下编写的)允许用户选择复选框,并将所选框的值添加到输入中,以逗号分隔

$(文档).ready(函数(){
变量=1
$(“#添加”)。单击(函数(){
var元素=$(“.test.hidden”).clone(true);
var testInputs=element.find(“.testInputs”)。单击(clickHandler);
testInputs.attr(“唯一索引”,变量);
var target=element.find('.user_input2#insert');
target.attr(“唯一标识符”,变量)
element.removeClass(“隐藏”).appendTo(“.paste:last”);
变量+=1;
});
函数clickHandler(){
log($(this.attr('unique-index'));
常量索引=$(this.attr('unique-index'))
const targetsValue=$(`#insert[unique identifier=“${index}]”)。val();
console.log('sup',targetsValue)
const combo=targetsValue?`${targetsValue},${$(this.val()}`:$(this.val())
$(`insert[unique identifier=“${index}]”).attr('value',combo);
}
$(“.test”).keyup(函数(){
var检验;
console.log('sup')
如果($(“.test”)为(“:选中”)){
test=$(“.test”).val();
};
$(“#插入“).val(测试);
});
$(“#testbtn”)。单击(函数(){
$(“.test”).keyup();
});
});
。隐藏{
显示:无;
}

试验
添加
选择权
选择1
选择2
选择3
计算

您应该选中更改事件上的
复选框值

//Added event listeners to element
$(document).on('change', '.testInputs', function () {
    //Target common ansestor
    var testContainer = $(this).closest('.test');
    //get checked checkboxes value in an array
    var checked = testContainer.find(':checked').map(function () {
            return this.value;
        }).get();

    //Target the textbox and set its value
    testContainer.find(".insert").val(checked.join(','));
});
另外,由于HTML中的标识符必须是唯一的,所以应该改用CSS类

<input type="text" class="insert" name="check[]">
。隐藏{
显示:无;
}

试验
添加
选择权
选择1
选择2
选择3
计算

很漂亮,我很佩服像你这样能流利地编码的人!非常感谢。