Javascript 复制Datatable中的行并在前置输入元素后刷新DOM

Javascript 复制Datatable中的行并在前置输入元素后刷新DOM,javascript,jquery,datatable,Javascript,Jquery,Datatable,我有两个数据表 当我双击一行时 //// Mov table 1 to 0 $('#DataTable1 tbody').on('dblclick', 'tr', function (event) { 它将所有原始行数据复制到destiny表中 //create array var data = []; //pushes data to array $(this).find('td').each(function () { data.push($(this).text()); });

我有两个数据表

当我双击一行时

//// Mov table 1 to 0
$('#DataTable1 tbody').on('dblclick', 'tr', function (event) {
它将所有原始行数据复制到destiny表中

//create array
  var data = [];
//pushes data to array
  $(this).find('td').each(function () { data.push($(this).text()); });
//add row to destiny table
  dt.row.add(data);
//draw table
  dt.draw(false);
好的,到目前为止还不错。。。我可以在行中插入“data-”.attr(),并在其中使用JQuery

现在我需要在两个特定的tds中添加一个“输入”。。。这是一个成功:

var input_pos = '<input type="number" class="edit-items" max="'+xpto+'" data-proj-signal="1"/>';

var input_neg = '<input type="number" class="edit-items" max="'+xpto2+'" data-proj-signal="-1"/>';
瞧。。。一切都在它应该在的地方。。。但是,当我尝试在新插入的输入上调用javascript/Jquery时,它根本不起任何作用。我以为因为它在一个.on()中,它会在prepend()之后刷新DOM,但看起来不像他那样

我该怎么做?是否有办法将这些输入与“数据”一起插入?如何刷新DOM,以便在Javascript/Jquery中使用它们的值

另外,我创建了一个函数来迭代每个输入,它们在DOm中,并且对函数可见:

<input id="clickMe" type="button" value="clickme" onclick="doFunction();" />

<script>


    function doFunction() {


        $('.edit-items').each(function () { alert($(this).attr("data-proj-signal")) });


    }

</script>

函数doFunction(){
$('.edit items').each(函数(){alert($(this.attr)(“数据项目信号”))});
}
当我开始在预挂起的输入中插入值时,不会发生任何情况,此时应触发以下内容(并且在输入不是预挂起的输入时触发):

$(“.edit items”)。关于(“输入”,函数(e){ //做事 }
非常感谢

first on()方法的冒泡出现问题

它只冒泡到“#DataTable1 tbody”。作为不同表中的新行,侦听器(second.on())

不知道它被添加了一个新元素

只需在两个表中添加一个公共HTML父表,问题就解决了。在本例中,只需在第一个.on()中添加“body”即可

$('body #projDataTable1 tbody').on('dblclick', 'tr', function (event) {
现在,在body元素之前,prepend是已知的,因此第二个.on()会被通知它

//// Mov table 1 to 0
$('#DataTable1 tbody').on('dblclick', 'tr', function (event) {
$(".edit-items").on("input", function (e) { // do stuff }
$('body #projDataTable1 tbody').on('dblclick', 'tr', function (event) {