跳转至内容
  • 版块
  • 标签
  • 热门
  • 用户
  • 群组
皮肤
  • 浅色
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • 深色
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • 默认(Flatly)
  • 不使用皮肤
折叠

Odoo 中文社区

  1. 主页
  2. 版块
  3. Odoo 开发与实施交流
  4. [已解决]odoo11 form view 根据字段的值显示不同的颜色

[已解决]odoo11 form view 根据字段的值显示不同的颜色

已定时 已固定 已锁定 已移动 Odoo 开发与实施交流
3 帖子 2 发布者 1.3k 浏览 2 关注中
  • 从旧到新
  • 从新到旧
  • 最多赞同
回复
  • 在新帖中回复
登录后回复
此主题已被删除。只有拥有主题管理权限的用户可以查看。
  • H 离线
    H 离线
    hui
    发表于 最后由 hui 编辑
    #1

    form view中selection字段如何根据不同的值显示不同的颜色?有没有有思路的啊?

    1 条回复 最后回复
    0
    • 鲍 离线
      鲍 离线
      鲍永道
      发表于 最后由 编辑
      #2

      直接extend selection,然后根据不同的值设置不同的颜色,注册到widget中,然后xml
      中使用即可。

      H 1 条回复 最后回复
      0
      • 鲍 鲍永道

        直接extend selection,然后根据不同的值设置不同的颜色,注册到widget中,然后xml
        中使用即可。

        H 离线
        H 离线
        hui
        发表于 最后由 hui 编辑
        #3

        @鲍永道
        是继承的字段selection,我只需要显示即只读状态下显示背景颜色。如下:
        (不知道是否还有更好的解决方法)
        ps:用原版的css样式,颜色太淡了,不满足需要的可以考虑写css。

        odoo.define('product.modify_field_value_bgcolor', function (require) {
            "use strict";
        
            var relational_fields = require('web.relational_fields');
        
            var FieldSelection = relational_fields.FieldSelection;
        
            FieldSelection.include({
                /**
                 * @override
                 * @private
                 */
                _renderReadonly: function () {
                    var formatValue = this._formatValue(this.value);
                    if(formatValue === 'In Process'){
                        this.$el.addClass('bg-warning');
                    }else if(formatValue === 'Ready'){
                        this.$el.addClass('bg-primary');
                    }else if(formatValue === 'Complete'){
                        this.$el.addClass('bg-success');
                    }else if(formatValue === 'Problem'){
                        this.$el.addClass('bg-danger');
                    }
                    this.$el.empty().text(formatValue);
                },
        
            });
        
        });
        
        1 条回复 最后回复
        0

        你好!看起来您对这段对话很感兴趣,但您还没有一个账号。

        厌倦了每次访问都刷到同样的帖子?您注册账号后,您每次返回时都能精准定位到您上次浏览的位置,并可选择接收新回复通知(通过邮件或推送通知)。您还能收藏书签、为帖子顶,向社区成员表达您的欣赏。

        有了你的建议,这篇帖子会更精彩哦 💗

        注册 登录
        回复
        • 在新帖中回复
        登录后回复
        • 从旧到新
        • 从新到旧
        • 最多赞同


        • 登录

        • 没有帐号? 注册

        • 登录或注册以进行搜索。
        • 第一个帖子
          最后一个帖子
        0
        • 版块
        • 标签
        • 热门
        • 用户
        • 群组