如何从 jQuery DataTables 中单元格内的 <input type=date> 获取值?

rod*_*zun 2 html javascript jquery dom datatables

<input type=date>在 DataTable的单元格内动态创建了一个(当我单击单元格时)。

我可以选择日期并且看起来不错,现在我得到表中的所有数据迭代每一行,因为我处理每一行的数据,这也工作正常,问题是当我想从这些输入中获取值时。

我尝试过data()node()但是我发现 HTML 上没有显示该值,我发现它应该是这样的,所以我无法从 HTML 中获取它,所以我尝试使用以下代码,它说它是未定义的.

table.rows().every( function ( rowIdx, tableLoop, rowLoop ) {
        // Tried this - return undefined

        var node = this.node();     
        alert(node.cells[0].value);// The typeof(node.cells[0]) is object HTMLTableCellElement


        // also this - here shows the HTML without the updated date
        var data = this.data();     
        alert(data);

});
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

Gyr*_*com 5

解决方案

使用下面的代码访问input第一列 ( column: 0) 中单元格内的值。

var table = $('#example').DataTable();

table.rows().every( function ( rowIdx, tableLoop, rowLoop ) {       
    var cell = table.cell({ row: rowIdx, column: 0 }).node();

    console.log($('input', cell).val());
});
Run Code Online (Sandbox Code Playgroud)

演示

有关代码和演示,请参阅此 jsFiddle