数据表 - 使用`columnDefs`更改列宽

时间:2016-10-17 18:50:54

标签: javascript datatables

我正在尝试调整表格中特定列的宽度(包装长内容和标题),但尚未成功。

根据文档here,我仍然无法调整指定列的宽度,我错过了哪些内容?

我有table id=onewidth=100%的以下DataTable参数:

$(document).ready(function(){
    $('#one').DataTable({
        paging: true,
        'scrollX': false,
        'autoWidth': false,
        'columnDefs' : [
            {'targets': [0,1], 'width': '50px'}
        ],
        "iDisplayLength": 50,
        'lengthMenu': [[10, 20, 50, 100, -1], [10, 20, 50, 100, "All"]],
        dom: 'Blfrtip',
        buttons: ['copy', 'csv', 'excel']
    });
});

我没有在HTML或其他方面指定任何CSS覆盖,所以这可能是问题吗?

2 个答案:

答案 0 :(得分:0)

您在列中添加了哪些数据? width属性仅应用于#include <fcntl.h> #include <errno.h> #include <poll.h> #include <unistd.h> #include <stdio.h> int main() { int fd; struct pollfd ev; int ret; ssize_t bytesread; char buf[8192]; fd = open("/proc/mounts", O_RDONLY); printf("########################################\n"); while ((bytesread = read(fd, buf, sizeof(buf))) > 0) write(1, buf, bytesread); do { ev.events = POLLERR | POLLPRI; ev.fd = fd; ev.revents = 0; ret = poll(&ev, 1, -1); lseek(fd, 0, SEEK_SET); if (ev.revents & POLLERR) { printf("########################################\n"); while ((bytesread = read(fd, buf, sizeof(buf))) > 0) write(1, buf, bytesread); } } while (ret >= 0); close(fd); return 0; } 元素,因此如果列th单元格中有更宽的元素,则它们可能会使列比您预期的更宽。例如,宽度大于50px的图像会使列宽度大于50px。

答案 1 :(得分:0)

感谢大家的回复。经过一些额外的挖掘,我意识到这个表是用nowrap类设置的。很烦人。删除此类后,包装将按要求运行。谢谢。