यह कॉलम फॉर्मेटर बैकग्राउंड कलर को ठीक करता है, लेकिन फिर मैं टेक्स्ट को बिल्कुल नहीं देख सकता।

function truthFormatter(cell, formatterParams, onRendered) {
    var cellValue = cell.getValue();
    var cellElement = cell.getElement();
    if (cellValue == "T") {
    cellElement.style.backgroundColor = "#0000B3";
    cellElement.style.color = "#FFFFFF";
    }
    else if (cellValue == "F") {
    cellElement.style.backgroundColor = "#B30000";
    cellElement.style.color = "#FFFFFF";
    }
}

इनमें से किसी एक सेल पर क्रोम का स्टाइल इंस्पेक्टर सुझाव देता है कि सब कुछ ठीक होना चाहिए:

element.style {
    width: 40px;
    text-align: center;
    background-color: rgb(0, 0, 179);
    color: rgb(255, 255, 255);
    height: 25px;
}

मुझे स्टैंड-अलोन, टेस्ट कॉन्फ़िगरेशन में वही व्यवहार मिलता है --- कोई अन्य सीएसएस लागू नहीं होता है।

साथ ही, उन कक्षों में पाठ जहां फ़ॉर्मेटर लागू नहीं होना चाहिए, दिखाई नहीं दे रहा है --- भले ही यहां शैली निरीक्षण भी ठीक प्रतीत होता है:

element.style {
    width: 151px;
    text-align: right;
    color: rgb(0, 0, 0);
    height: 32px;
}

रेंडर किए गए टेबल के स्क्रीनशॉट का लिंक

फ़ॉर्मेटर के बिना रेंडरिंग का लिंक

1
Bob Schrag 6 अक्टूबर 2018, 02:41

1 उत्तर

सबसे बढ़िया उत्तर

आपकी पंक्ति:

cellElement.style.color = "#FFFFFF";

ठीक काम करना चाहिए, मैंने कुछ परीक्षण चलाए हैं और यह इस अंत में काम करता है।

मैं यह देखने के लिए आपके ब्राउज़र इंस्पेक्टर का उपयोग करने का सुझाव दूंगा कि कौन सी सीएसएस इसे ओवरराइड कर रही है।

आप फॉर्मेटर में सेल का मान भी नहीं लौटा रहे हैं, इसलिए सेल के अंदर कुछ भी प्रदर्शित नहीं होगा।

आपको इस लाइन को अपने फ़ॉर्मेटर फ़ंक्शन के निचले भाग में जोड़ना होगा

return cell.getValue();
2
Oli Folkerd 27 अक्टूबर 2018, 17:45