作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有没有办法以编程方式动态更改 Angularjs ui-grid 中列的宽度?
我试过改变 $scope.gridOptions.columnDefs[i].width,但它没有任何效果。
我问是因为我设置了 ui-grid-resize-columns 指令,允许用户调整最初设置为百分比宽度的列的大小。但是一旦用户进行了任何手动修改,列大小都将变为静态,不再随着整个表格宽度而增长或缩小。
我想添加一个“自动调整”按钮,允许用户将列大小定义恢复为百分比(基于他们当前手动设置的比例),加起来为 100%。理想情况下,列将再次开始调整以适应表大小的变化。
我只能看到用户定期按 F5 以获得这种效果(我会!),不知不觉地导致整个页面从头开始重新加载,不必要地消耗了大量的服务器资源。我想一个不愉快的选择是从一开始就让它们静止,消除这种诱惑!
最佳答案
更改 columnDef 宽度不起作用,因为 GridColumn 已经从 columnDefs 构建,而 ui-grid 只监视对 columnDefs 数组的更改,而不是单个 columnDef 属性。您可以做的是在列的 GridColumn 对象上设置新的列宽。这对我有用。
$scope.grid.getColumn('my-column').width = $newWidth;
$scope.grid.refresh();
关于angularjs - 有没有办法动态设置Angularjs ui-grid的col宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26811729/
我是一名优秀的程序员,十分优秀!