【问题标题】:Change color of the td cell based on the value in database根据数据库中的值更改 td 单元格的颜色
【发布时间】:2016-05-27 03:50:40
【问题描述】:

您好,我正在开发一个支持 Django 的网站。我有一个 html 表,它返回特定记录的 id。我的目标是根据值更改 td 单元格颜色。以下是我的html

                   {% for l in all_items %}

                                <td style="text-align: center"
                                    id="{{m.id}}_{{m.set}}">
                                </td>

                    {% endfor %}

并使用 JavaScript 将值传递给 id,如下所示:

<script>

$(document).ready(function() {
    {% for a in all_results %}
            $('#{{a.id}}_{{a.set}}').html('{{a.id}}');
    {% endfor %}
});
</script>

我的一个 css(基于状态):

.completed{
    background-color: #53A36E;
}

由于它在 html 中对所有项目都有一个 for 循环,因此每个项目都返回不同的值(id 并且还有另一个未显示的列是状态)。 td 单元格(包含 id)的颜色将根据状态发生变化。我怎样才能让它发生?在此先感谢各位。

【问题讨论】:

    标签: javascript jquery html css django


    【解决方案1】:

    假设您的模型中有一个名为statusCharField 字段,并且它的值可以是"completed",您可以这样写:

    <td style="text-align: center"
        class="{{ m.status }}"
        id="{{ m.id }}_{{ m.set }}">
    </td>
    

    对于m.status"completed" 的单元格,背景颜色为#53A36E

    如果你需要从 Javascript 中设置类,你可以使用以下:

    {% for a in all_results %}
            $('#{{ a.id }}_{{ a.set }}').html('{{ a.id }}');
            $('#{{ a.id }}_{{ a.set }}').addClass('{{ a.status }}');
    {% endfor %}
    

    【讨论】:

    • 谢谢塞尔丘克。我试过了,但它使整个 td 变为 #53A36E 颜色,而不是具有值 (id) 的单元格
    • 整个td是什么意思?
    • 表格的整个水平行(包括那些没有数据的单元格(td-th)(没有 id vlaue)。我想将单个(该特定行的第 td 个单元格)设置为颜色。知道塞尔丘克了吗?
    • 然后你可以使用同样的方法使用JQuery,看我更新的答案。
    • 工作。谢谢塞尔丘克
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-24
    • 1970-01-01
    • 2020-10-17
    • 2017-08-23
    • 2011-07-29
    相关资源
    最近更新 更多