动态输入未定义值问题?

Dynamic inputs undefined value issue?

console.log($('#mat_code_' + counter - 1).val()); 并且输入仍然为空时,我得到一个未定义的值。

这是我的代码:

$('#m_table').on('click', '.check', function() {
                var table = $('#m_table').DataTable();
                //var limit = 2;
                if ($("input[name='check']:checked").length > counter) {
                    this.checked = false;
                    $('#mat_code_' + counter - 1).val(table.row(this.closest('tr')).data()['mat_code']);
                    $('#mat_designation_' + counter - 1).val(table.row(this.closest('tr')).data()['mat_designation']);
                }
                console.log($('#mat_code_' + counter - 1).val());
            });

输入是这样生成的:

var counter = 0;

    $("#addrow").on("click", function() {
                    var newRow = $("<tr>");
                    var cols = "";

                    //cols += '<td><input type="text" required="required" class="form-control" name="' + counter + '"/></td>';
                    cols += '<td><input type="text" required="required" class="form-control" name="mat_code_' + counter + '" id="mat_code_' + counter + '"/></td>';
                    cols += '<td><input type="text" required="required" class="form-control" name="mat_designation_' + counter + '" id="mat_designation_' + counter + '"/></td>';
                    cols += '<td><input type="button" class="ibtnDel btn btn-md btn-danger" value="Supprimer"></td>';
                    newRow.append(cols);
                    $("table.order-list").append(newRow);
                    counter++;
                    $("#nb_mat").val(counter);
                    $('#action').attr("disabled", false);
                });

尝试在字符串连接[=17]之前使用括号执行算术运算 =]:

$('#mat_code_' + (counter - 1))