Javascript jQuery在动态创建的表/单元格中找不到复选框值

Javascript jQuery在动态创建的表/单元格中找不到复选框值,javascript,jquery,Javascript,Jquery,我试图在单击按钮时从动态创建的表中查找复选框0、1、2的值。该复选框位于表格每行的最后一个单元格中。单击复选框时,jQuery不会给我值。这是我的密码: <body> <table id="DataTable" style="position:absolute;left:348px;top:80px;width:350px;height:10px;z- index:7;text-align:center;"></table> <input type

我试图在单击按钮时从动态创建的表中查找复选框0、1、2的值。该复选框位于表格每行的最后一个单元格中。单击复选框时,jQuery不会给我值。这是我的密码:

<body>

<table id="DataTable" 
style="position:absolute;left:348px;top:80px;width:350px;height:10px;z-
index:7;text-align:center;"></table>

<input type="submit" id="Button4" name="Clk_In" value="Create Table" 
style="position:absolute;left:495px;top:250px;width:96px;height:35px;z-
index:0;">


<script 
 src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.2/jquery.min.js">
</script>
<script>  // jQuery code below 

var count = 0;

// create table heading & rows by clicking button
$(document).on("click","#Button4", function() {               

    drawHeading();

    for( var i = 0; i < 3; i++ ) {
       drawRow();
    }
});

function drawHeading() {

var row = $("<tr />")
$("#DataTable").append(row);
row.append($("<th>" + "Trans#" + "</th>"));
row.append($("<th>" + "DayOfYear" + "</th>"));
row.append($("<th>" + "Vendor" + "</th>"));
row.append($("<th>" + "Amount&nbsp;($)" + "</th>"));
row.append($("<th>" + "Remove" + "</th>"));

}

function drawRow( ) {

var row = $("<tr />")
    $("#DataTable").append(row);
    row.append($("<td>" + "cell1" + "</td>"));
    row.append($("<td>" + 2  + "</td>"));
    row.append($("<td>" + "cell3" + "</td>"));
    row.append($("<td>" + 4 + "</td>"));
    row.append($("<td/>").append($('<input type="checkbox" name="chkbox2" 
     value="' + count + '"/>')));

    count += 1;
    //alert("count: " + count);
 }

// find checkBox value   *** NOT WORKING should show 0 or 1 or 2  *** 
var checkboxValues = [];

$('input[name=chkbox2]:checked').map(function() {
    checkboxValues.push($(this).val());
});

alert(checkboxValues[0]);

</script>
任何专家建议都将不胜感激。
Greg

即使在创建HTML之前,您也在检查复选框值。您可以移动代码以单击按钮的事件处理程序

<script>  
// jQuery code below 

    var count = 0;

    // create table heading & rows by clicking button
    $(document).on("click","#Button4", function() {               

        drawHeading();

        for( var i = 0; i < 3; i++ ) {
           drawRow();
        }

         // find checkBox value
    var checkboxValues = [];

    $('input[name=chkbox2]:checked').map(function() {
        checkboxValues.push($(this).val());
    });

    alert(checkboxValues[0]);

    });

    function drawHeading() {

    var row = $("<tr />")
    $("#DataTable").append(row);
    row.append($("<th>" + "Trans#" + "</th>"));
    row.append($("<th>" + "DayOfYear" + "</th>"));
    row.append($("<th>" + "Vendor" + "</th>"));
    row.append($("<th>" + "Amount&nbsp;($)" + "</th>"));
    row.append($("<th>" + "Remove" + "</th>"));

    }

    function drawRow( ) {

    var row = $("<tr />")
        $("#DataTable").append(row);
        row.append($("<td>" + "cell1" + "</td>"));
        row.append($("<td>" + 2  + "</td>"));
        row.append($("<td>" + "cell3" + "</td>"));
        row.append($("<td>" + 4 + "</td>"));
        row.append($("<td/>").append($('<input type="checkbox" name="chkbox2" 
         value="' + count + '"/>')));

        count += 1;
        //alert("count: " + count);
     }

    </script>

不在后面附加。添加对象时使用贴图功能

行.append$.append$.mapthis.items,函数项,索引{ checkboxValues.push$this.val;
};

爪哇?你确定这个问题与Java有关吗?我已经删除了Java问号,因为它看起来确实不合适。我不太确定添加输入的方式。至少我确信这对输入有效,但不确定这是否是问题所在:$,{type:'checkbox',name:'chkbox2',value:count}在创建选中的输入之前,您正在查找它们。创建HTML,然后进行输入检查。
$('input[name=chkbox2]').change(function() {
        //perform your logic
    });