【问题标题】:How to set table cell appearance depending on table cell value in Handsontable如何根据 Handsontable 中的表格单元格值设置表格单元格的外观
【发布时间】:2017-03-01 21:09:52
【问题描述】:
我将Handsontable 用于PHP 和MySQL 数据库。
在我的表格中,a 有 6 列,如下所示:
|产品 |数量。 |好 |损坏 |切割和撕裂 |
数量。= 良好 + 损坏 + 切割和撕裂
首先我将在表格中输入“产品”和“数量”,此时“良好”、“损坏”、“切割和撕裂”的值将自动设置为零。但是当我在任何单元格“良好”、“损坏”或“剪切和撕裂”中输入一个值时,单元格的背景将是红色的,直到这三个单元格的总值(“良好”、“损坏”和“剪切和撕裂” Torn") 将等于“数量”单元格的值。
现在我需要一些指南来通过 JS 实现这一目标吗?
任何帮助将不胜感激。
【问题讨论】:
标签:
javascript
mysql
handsontable
【解决方案1】:
你可以使用这个解决方案:
Handsontable.hooks.add('afterRender', function() {
var d = this;
var quantity = d.getDataAtCol(1);
var good = d.getDataAtCol(2);
var damaged = d.getDataAtCol(3);
var cut_torn = d.getDataAtCol(4);
$.each(quantity,function(i,v){
if (+good[i] !== 0 || +damaged[i] !== 0 || +cut_torn[i] !== 0){
if ((+good[i]] + +damaged[i] + +cut_torn[i]) != v ) {
$(d.getCell(i,1)).css({'background':'yellow'});
$(d.getCell(i,2)).css({'background':'red'});
$(d.getCell(i,3)).css({'background':'red'});
$(d.getCell(i,4)).css({'background':'red'});
}
}
});
});