簡體   English   中英

使用來自 OData SAPUI5/JAVASCRIPT 的值放置背景顏色

[英]Put background color with values from OData SAPUI5/JAVASCRIPT

我需要使用從 OData 獲取的值設置背景 colors 我有以下代碼:

oModel.read("/EspCoSet", {
    filters: [aFilters],
    success: function (oD, oR) {
        var oResults = oD.results;
        for (var i = 0; i < oResults.length; i++) {
            var color_fondo = oResults[i].ColorFondo;
            var color_texto = oResults[i].ColorTexto;
        }
    },
    error: function (oE) {
        console.log("Error");
    }
});

在變量“color_fondo”中,我以 HEX 格式保存顏色值,如“FFFFFF”。 有什么方法可以在不觸摸 css 的情況下將此值放入相應的單元格。我看了這個方法:

[data-esp="Hospitalizado"] * {
  background-color:   #FFFFFF !important;
  color: red !important;
}

但如果我這樣做,我需要再次寫入信息(來自 OData 的信息),然后 OData 的值沒有任何用處。 可能嗎?

我找到了一個解決方案,它是 Inte.net 中一些答案的合並。 為了從 OData 中獲取 colors,我稍微更改了后端。 我之前的表格是 colors 的十六進制,現在我改成了這樣的字母:

color_fondo  |  color_texto
WHITE        |  BLACK
BLUE         |  RED  
GREEN        |  BLACK

然后,在 css 中,我將顏色名稱設置為 class,如下所示:

.BLUE {
    background-color: #9dcfdd !important;
}

最后在 controller 中,當我閱讀 model 並獲得每個患者的相應顏色時,我獲得了每個單元格的項目,並使用addStyleClass應用來自 OData 的變量 color_fondo。

oModel.read("/EspCoSet", {
    filters: [aFilters],
    success: function (oD, oR) {
        var oResults = oD.results;
        for (var i = 0; i < oResults.length; i++) {
            var color_fondo = oResults[i].ColorFondo;
            var color_texto = oResults[i].ColorTexto;
            var aItems = oTable.getItems();
            aItems[i].addStyleClass(color_fondo);
            aItems[i].addStyleClass(color_texto);
        }
    },
    error: function (oE) {
        console.log("Error");
    }
});

最后我在前端得到了 colors。 我把它留在這里是因為我找不到任何從 OData 中獲取 colors 的示例,可能會對某人有所幫助。 順便說一句,對不起我的英語,我希望一切都清楚。

注意:對於文本顏色,您需要輸入 css *:

.RED *{
    color: #c63637 !important;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM