Index: ssts-web/src/main/webapp/ext/js/multiSelectCombo.js =================================================================== diff -u -r33400 -r33726 --- ssts-web/src/main/webapp/ext/js/multiSelectCombo.js (.../multiSelectCombo.js) (revision 33400) +++ ssts-web/src/main/webapp/ext/js/multiSelectCombo.js (.../multiSelectCombo.js) (revision 33726) @@ -45,9 +45,17 @@ { if (this.el) { - var v = this.el.dom.value; + var v = this.el.dom.value; this.el.dom.value = ''; this.el.dom.value = v; + if(v == '全部'){ + var va = []; + var snapshot = this.store.snapshot || this.store.data; + snapshot.each(function (r){ + va.push(r.get(this.valueField)); + }, this); + this.setValue(va.join(this.separator)); + } } }); }, @@ -156,6 +164,17 @@ if (this.fireEvent('beforeselect', this, record, index) !== false) { record.set(this.checkField, !record.get(this.checkField)); + var va = []; + var snapshot = this.store.snapshot || this.store.data; + if(!record.get(this.checkField) && record.get('name') !== '全部' && this.getRawValue() == '全部'){ + snapshot.each(function (r){ + if(r.get(this.valueField) !== '全部' && r.get('checked')){ + va.push(r.get(this.valueField)); + } + }, this); + this.setValue(va.join(this.separator)); + this.store.clearFilter(); + } if (this.store.isFiltered()) { this.doQuery(this.allQuery);