【问题标题】:How do I get the value from <input type=date> inside a cell in jQuery DataTables?如何从 jQuery DataTables 中的单元格内的 <input type=date> 获取值?
【发布时间】:2015-10-02 17:12:59
【问题描述】:

我在 DataTable 的单元格内动态创建了一个(当我单击单元格时)&lt;input type=date&gt;

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

我尝试使用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);

});

有什么想法吗?

【问题讨论】:

  • 有值的不是TD,是输入,使用node.cells[0] .children[0] .value

标签: javascript jquery html dom datatables


【解决方案1】:

解决方案

使用下面的代码访问第一列单元格内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());
});

演示

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

【讨论】:

    猜你喜欢
    • 2016-01-23
    • 2022-12-07
    • 2013-05-29
    • 2018-10-12
    • 2022-10-15
    • 1970-01-01
    • 2011-10-19
    • 2022-11-02
    • 2013-05-22
    相关资源
    最近更新 更多