Javascript 由于相同的名称属性,将为所有复选框设置相同的id。请尝试以下代码 $(document).ready(function() { var sortedIds = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; for (var i = 0; i < sortedIds.length; i++) { $("#batch_schedule_wraper").append("<div class='checkbox'>" + "<label class='block'>" + "<input name='form-field-checkbox' type='checkbox' class='ace input-lg remove_widget' id='"+ sortedIds[i] +"'/>" + "<span class='lbl bigger-120'>Batch</span>" + " </label>" + "</div>" + "</div>"); } $('#getCheckedBoxtBtn').on('click', function() { var selected = []; $("body div#batch_schedule_wraper input[type=checkbox]").each(function() { if ($(this).is(":checked")) { selected.push($(this).attr('id')); } }); console.log(selected); }); }); $(文档).ready(函数(){ var sortedis=[1,2,3,4,5,6,7,8,9,10]; 对于(变量i=0;i

Javascript 由于相同的名称属性,将为所有复选框设置相同的id。请尝试以下代码 $(document).ready(function() { var sortedIds = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; for (var i = 0; i < sortedIds.length; i++) { $("#batch_schedule_wraper").append("<div class='checkbox'>" + "<label class='block'>" + "<input name='form-field-checkbox' type='checkbox' class='ace input-lg remove_widget' id='"+ sortedIds[i] +"'/>" + "<span class='lbl bigger-120'>Batch</span>" + " </label>" + "</div>" + "</div>"); } $('#getCheckedBoxtBtn').on('click', function() { var selected = []; $("body div#batch_schedule_wraper input[type=checkbox]").each(function() { if ($(this).is(":checked")) { selected.push($(this).attr('id')); } }); console.log(selected); }); }); $(文档).ready(函数(){ var sortedis=[1,2,3,4,5,6,7,8,9,10]; 对于(变量i=0;i,javascript,jquery,html,Javascript,Jquery,Html,因为您使用了此代码$(“[name='form-field-checkbox']”)。attr(“id”,sortedis[i])由于相同的名称属性,它将为所有复选框设置相同的id。请尝试以下代码 $(document).ready(function() { var sortedIds = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]; for (var i = 0; i < sortedIds.length; i++) { $("#batch_sch

因为您使用了此代码
$(“[name='form-field-checkbox']”)。attr(“id”,sortedis[i])由于相同的名称属性,它将为所有复选框设置相同的id。请尝试以下代码

$(document).ready(function() {
  var sortedIds = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

  for (var i = 0; i < sortedIds.length; i++) {

    $("#batch_schedule_wraper").append("<div class='checkbox'>" +
      "<label class='block'>" +
      "<input name='form-field-checkbox' type='checkbox' class='ace input-lg remove_widget' id='"+ sortedIds[i] +"'/>" +
      "<span class='lbl bigger-120'>Batch</span>" +
      " </label>" +
      "</div>"
      +
      "</div>");

  }

  $('#getCheckedBoxtBtn').on('click', function() {

    var selected = [];

    $("body div#batch_schedule_wraper input[type=checkbox]").each(function() {
      if ($(this).is(":checked")) {
        selected.push($(this).attr('id'));
      }
    });

    console.log(selected);
  });  
});
$(文档).ready(函数(){
var sortedis=[1,2,3,4,5,6,7,8,9,10];
对于(变量i=0;i
对于动态生成的元素,您可以按类获取元素,而不是id,因为每个dom元素的id都应该是唯一的。e、 g
$('.你的班级名称')
。在这里,我为每个复选框添加了一个类,比如说
'checkboxClass'
,并对复选框进行迭代

$(文档).ready(函数(){
$('#getCheckedBoxtBtn')。在('click',function()上{
所选var=[];
$('.checkboxClass')。每个(函数(){
如果($(this).is(':checked')){
选中.push($(this.prop('id'));
}
});
警报(选定);
});
var-sortedis=[1,2,3,4,5,6,7,8,9,10];
对于(变量i=0;i

对于动态生成的元素,您可以按类获取元素,而不是id,因为每个dom元素的id都应该是唯一的。e、 g
$('.你的班级名称')
。在这里,我为每个复选框添加了一个类,比如说
'checkboxClass'
,并对复选框进行迭代

$(文档).ready(函数(){
$('#getCheckedBoxtBtn')。在('click',function()上{
所选var=[];
$('.checkboxClass')。每个(函数(){
如果($(this).is(':checked')){
选中.push($(this.prop('id'));
}
});
警报(选定);
});
var-sortedis=[1,2,3,4,5,6,7,8,9,10];
对于(变量i=0;i


什么循环问题?尽量具体。请提供一个可运行的什么循环问题?请尽量具体。请提供一个可运行的我想标记你的答案是正确的,虽然其他贡献者也得到了正确的答案,但你的答案是第一位的。但是,您能否向我解释一下,如何在特定的复选框上获取事件,因此我不知道有id,例如$(document).on('change',“#UNKNOWN_id”),function(){$(this).prop('disabled',true);alert($(this.prop('id'));您可以通过
$(document).on('change',“#UNKNOWN_ID”,function(evt){console.log(evt);})获取事件。通过
$(evt.target)
获取元素。现在我可以将所有选中复选框的ID获取到一个数组中,是否有一种方法可以在选中每个复选框时单独通知ID。我的意思是如何处理onchange事件中的单个复选框。看到这里的ID无法确定。非常感谢。你真的可以编写代码!这就是我过去三天一直在寻找的一切$函数(evt){var target=$(evt.target);警报($(target.prop('id'));evt.preventDefault());感谢这次更新,它减少了我的代码,我还学到了jquery的更多语法和语义。您的更新没有给我预期的结果。我正在将ID发送到ajax中,如果成功,我需要禁用复选框,但是,$(this).prop('disabled',true);不起作用,但是evt.target很有魅力。我想把你的答案标记为正确答案,尽管其他贡献者也做对了,但你的答案排在第一位。但是,您能否向我解释一下,如何在特定的复选框上获取事件,因此我不知道有id,例如$(document).on('change',“#UNKNOWN_id”),function(){$(this).prop('disabled',true);alert($(this.prop('id'));您可以通过
$(document).on('change',“#UNKNOWN_ID”,function(evt){console.log(evt);})获取事件。通过
$(evt.target)
获取元素。现在我可以将所有选中复选框的ID获取到一个数组中,是否有一种方法可以在选中每个复选框时单独通知ID。我的意思是如何处理onchange事件中的单个复选框。看到这里的ID无法确定。非常感谢。你真的可以编写代码!这就是我过去三天一直在寻找的一切$函数(evt){var target=$(evt.target);警报($(target.prop('id'));evt.preventDefault());感谢这次更新,它减少了我的代码,我还学到了jquery的更多语法和语义。您的更新没有给我预期的结果。我正在发送身份证
// ...
"<input name='form-field-checkbox' type='checkbox' class='ace input-lg remove_widget' id='"+ sortedIds[i] +"'/>" +
//...
var selected = $("div#batch_schedule_wraper input[type=checkbox]:checked").map(function () {
    return $(this).attr("id");
})
for (var i = 0; i < sortedIds.length; i++) {

    $("#batch_schedule_wraper").append("<div class='checkbox'>" +
      "<label class='block'>" +
      "<input name='form-field-checkbox' type='checkbox' class='ace input-lg remove_widget' id='" + sortedIds[i] + "'/>" +
      "<span class='lbl bigger-120'>Batch</span>" +
      " </label>" +
      "</div>" +
      "</div>");
  }
    for (var i = 0; i < sortedIds.length; i++) {

  var $checkDiv = $("<div class='checkbox'>" +
      "<label class='block'>" +
      "<input name='form-field-checkbox' type='checkbox' class='ace input-lg remove_widget' id='" + sortedIds[i] + "'/>" +
      "<span class='lbl bigger-120'>Batch</span>" +
      " </label>" +
      "</div>" +
      "</div>");

      $checkDiv.find("input").on("change", function(evt) {
            //do whatever you want
            //alert($(this).attr("id"));
      });

    $("#batch_schedule_wraper").append($checkDiv);
  }
$(document).ready(function() {
  var sortedIds = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

  for (var i = 0; i < sortedIds.length; i++) {

    $("#batch_schedule_wraper").append("<div class='checkbox'>" +
      "<label class='block'>" +
      "<input name='form-field-checkbox' type='checkbox' class='ace input-lg remove_widget' id='"+ sortedIds[i] +"'/>" +
      "<span class='lbl bigger-120'>Batch</span>" +
      " </label>" +
      "</div>"
      +
      "</div>");

  }

  $('#getCheckedBoxtBtn').on('click', function() {

    var selected = [];

    $("body div#batch_schedule_wraper input[type=checkbox]").each(function() {
      if ($(this).is(":checked")) {
        selected.push($(this).attr('id'));
      }
    });

    console.log(selected);
  });  
});