diff --git a/src/case/combo/textvaluecombo/combo.textvalue.js b/src/case/combo/textvaluecombo/combo.textvalue.js index 7c8d90f62..9dc81b5be 100644 --- a/src/case/combo/textvaluecombo/combo.textvalue.js +++ b/src/case/combo/textvaluecombo/combo.textvalue.js @@ -83,25 +83,22 @@ BI.TextValueCombo = BI.inherit(BI.Widget, { }, _checkError: function (v) { - if (BI.isNull(v) || BI.isEmptyArray(v) || BI.isEmptyString(v)) { - this.trigger.options.tipType = "success"; + v = BI.isArray(v) ? v[0] : v; + var tipType = null; + var result = BI.find(this.options.items, function (idx, item) { + return v === item.value; + }); + if (BI.isNull(result)) { + if (this.isEnabled()) { + tipType = "warning"; + } + this.element.addClass("error"); + this.trigger.element.addClass("error"); + } else { this.element.removeClass("error"); this.trigger.element.removeClass("error"); - } else { - v = BI.isArray(v) ? v : [v]; - var result = BI.find(this.options.items, function (idx, item) { - return BI.contains(v, item.value); - }); - if (BI.isNull(result)) { - this.trigger.setTipType("warning"); - this.element.addClass("error"); - this.trigger.element.addClass("error"); - } else { - this.trigger.setTipType("success"); - this.element.removeClass("error"); - this.trigger.element.removeClass("error"); - } } + this.trigger.setTipType(tipType); }, setValue: function (v) {