javascript - 数据表:通过 DOM 数据源中的名称引用列

标签 javascript jquery html datatables

现在我有以下 html 表:

<table id="datatable">
    <thead>
        <th>fruits</th>
        <th>vegs</th>
    </thead>
    <tbody>
        <tr>
            <td>apple</td>
            <td>potato</td>
        </tr>
        <tr>
            <td>apple</td>
            <td>carrot</td>
        </tr>
    </tbody>
</table>

我想像这样按名称引用列:

<script type="text/javascript">
$(document).ready(function() {  
    /* Init the table */
    var oTable = $('#datatable').dataTable( );

    //get by sTitle
    console.log(oTable);
    var row = oTable.fnGetData(1)
    console.log(row['vegs']);//should return 'carrot'
} );
</script>

当数据源是 DOM 时,是否有一个 javascript 函数 fnGetData() 返回一个对象而不是一个数组?

最佳答案

这尚未经过测试,但可能有效:

$(function() {
    // Get an array of the column titles
    var colTitles = $.map($('#datatable th'), function() {
        return this.text();
    }).get();

    var oTable = $('#datatable').dataTable();

    var row = oTable.fnGetData(1);
    console.log(row[colTitles.indexOf('vegs')]);
});

关于javascript - 数据表:通过 DOM 数据源中的名称引用列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12408173/

相关文章:

javascript - 在触发请求之前在拦截器中刷新 token

javascript - 为什么我们需要使用 flatMap?

javascript - 为什么 jQuery 为元素高度返回 null?

javascript - 将 HTML 代码存储在变量中(对于浏览器来说更快?)

html - 使用 mpdf 在 PDF 输出中设置样式 span 标签

java - Maven yui 压缩器插件无法在给定较长路径的情况下创建聚合?

javascript - 如何替换 CasperJS 弹出窗口中的导航器对象?

javascript - datetimepicker 的验证消息不能正常工作?

javascript - jquery获取逗号后的一个数的值

javascript - 使用sse更新数据时如何在div上淡入淡出更改颜色