一组动态生成的复选框在数组中获取整个值

Group of multiple dynamically generated checkbox getting whole value inside an array

我的代码

复选框 1:从 json 列表生成

tr.append($("<td />").html('<input type="checkbox" id="reqid" name="reqid[]" value='+item+'>'));

复选框 2:从另一个 json 列表生成

tr.append($("<td />").html('<input type="checkbox" id="selector" name="selector[]" value='+item[0]+'>'));

我想在单独的数组中获取两个复选框的值。请帮助我:)

我使用了下面的代码,但是两个复选框的数组 val returns 值

变量值 = [ ];

    `$`(':checkbox:checked').each(function(i){
    val[i] = `$`(this).val();
    alert(val[i]); 

});

我需要在名为 reqid[ ] 和 slectid[ ] 的单独文本框中获取两个复选框值

您可以使用 :eq(0):eq(1) 来定位第一个和第二个元素:

var Checkboxes1=$('tr :checkbox:eq(0)').map(function() {
   return this.value;
}).get();


var Checkboxes2=$('tr :checkbox:eq(1)').map(function() {
   return this.value;
}).get();

试试这个我猜你没有在多个复选框上应用相同的 ID:

var data = {};
    data.chk1 = [];
    data.chk2 = [];

$(':checkbox:checked').each(function(i){ 
    if(this.id == "reqid"){
        data.chk1.push(this.value);
    }else if(this.id == "selector"){
        data.chk2.push(this.value);
    }
});

console.log(data.chk1 + ":::" + data.chk2);

因为您已经为复选框提供了 id 属性,所以您可以获得带有 ID 的值。