Handsontable 动态设置设置

Posted

技术标签:

【中文标题】Handsontable 动态设置设置【英文标题】:Handsontable Dynamically Set Settings 【发布时间】:2015-04-21 10:58:38 【问题描述】:

我有一个很大的handsontable。我已经定义了下拉列,但是,源的值是使用 AJAX 检索的。

如何动态设置“下拉”类型的“列”的“源”属性?

问候!

【问题讨论】:

【参考方案1】:

您可以而且应该使用:

hotInstance.updateSettings(
  columns: getNewColumns()
)

getNewColumns() 将返回包含数据和新源的列数组(或从此处进行 AJAX 调用)。应该这样做!

【讨论】:

【参考方案2】:

感谢 ZekeDroid 的回答。

我能够解决我的问题。

首先说一下 angular 指令中的一个问题: 我正在使用handsontable 的角度指令。发生了两件事:1.如果我将 datarows 属性关联到模型中的嵌套变量,例如 $scope.hot.data,那么当我更改模型的值时 ($scope.hot.data)网格 ui 未刷新。我很确定这是指令的问题。现在:2.假设我使用$scope.data 并更新它的值(这是模型正确的),那么网格 ui 也不会刷新。我也必须做类似hotInstance.updateSettings(data: newData) 的事情。

我必须同时做这两件事;即更新模型并调用更新设置方法。这是我让它正常工作的唯一方法。

注意:如果我执行 $scope.$apply() 而不是 updateSettings,我会在控制台中收到错误消息。

【讨论】:

以上是关于Handsontable 动态设置设置的主要内容,如果未能解决你的问题,请参考以下文章

无论如何用 Handsontable 过滤行?

如何动态更改 Handsontable 的高度参数

Handsontable:关闭自动调整行大小(如何设置固定高度?)

Handsontable,设置单元格中的可见行数

在 Handsontable 中有条件地设置嵌套行的样式

Handsontable 如何手动将单元格设置为无效