刷新手持式桌子
Refresh a handsontable
我想刷新一个handsontable网格。我有一些列与下拉框填充了我的数据库的数据。但在我的页面中,我有一个第一个网格,它在这个数据库中插入数据,我在第二个网格中得到它们。但是由于我的第二个网格没有刷新,我无法获得我刚刚插入到第一个网格中的最后一个值。
那么如何刷新handsontable的内容呢?
编辑:我做了一个例子来说明我的问题:http://jsfiddle.net/9onuhpn7/10/在我的jsFiddle上,它可以工作,当我将它们推入数组时,我可以获得值。但在我的实际应用程序和数据库中,它不起作用。
所以我的代码中没有数组,而是这样(它可以工作,但没有刷新):
columns:[
<?php
$conn_string = "host=localhost port=5432 dbname=test_postgre user=postgres password='1234'";
$dbconn = pg_connect($conn_string);
$sql = "SELECT ".$colonne." FROM public.".$tablevar."";
$res = pg_query($sql) or die("Pb avec la requete: $sql");
$data = pg_fetch_all($res);
$indexedOnly = array();
foreach ($data as $row) {
$indexedOnly[] = array_values($row);
}
echo '{type:''dropdown'',';
echo 'source:'.json_encode($indexedOnly).'},';
?>]
直接调用hot.render();
,其中hot
指Handsontable
对象。
我现在明白了。您需要动态更新下拉列表的源。使用下面的代码应该很容易:
hot2.updateSettings({
columns: [{
type: 'dropdown',
source: arrayTest
}]
})
确保在arrayTest
具有新值之后添加此值,并且应该设置为go。这是您的小提琴,在正确的位置添加行
尝试将observeChanges选项设置为true。这将检测数据源中的更改并再次呈现网格。
https://github.com/handsontable/handsontable/wiki/Options constructor-options
接受的答案不适合我,但下面的代码工作得很好。
let hot = new Handsontable(this.hotTableComponentTest.nativeElement, {
data: [["","",""]] ,
...
});
if (value && value.length>0 && this.hot) {
this.hot.getInstance().loadData(value);
this.hot.getInstance().render();
}
相关文章:
- 强制模板刷新ember.js
- 如何通过ajax刷新JSF填充的javascript变量
- 如何解决Yii中的页面刷新问题
- Jquery提交表单而不刷新
- 刷新页面后会出现警报
- 刷新后保留对网页的更改
- 如何在不刷新页面的情况下更新显示框
- 重定向时角度刷新浏览器
- 如何防止jQueryonclick事件中的Ruby方法在页面刷新时执行
- Javascript,输出结果后页面不断刷新
- $(document).height()在刷新时随机化值(Safari 5.1.10)
- 刷新父窗口后无法关闭窗口
- 刷新页面时hasClass不起作用
- X秒后刷新select元素
- chart.series[id].remove()无法刷新高位图表/高位股票中其他系列的图例属性
- 触发媒体查询断点时刷新页面
- 如何刷新列表框内容onclick或blur事件
- 如何在火狐浏览器中禁用F5和刷新
- 刷新后,setTimeout将工作或不工作
- 刷新导致我的帖子“;张贴“;再一次